C & C++ FAQ
|
|
型の大きさは、sizeof演算子を用い、
sizeof (型名)
によって整数値として取得できます。
ここでの《大きさ》とは、char型の何倍であるか、すなわち何バイトであるかです。当然sizeof(char)によって得られる値は1です。
なお、この演算子が返す値の型は、<stddef.h>で定義されている符号無し整数型であるsize_t型です。
基本型の大きさを表示するプログラム例を示します。#include <stdio.h>
int main(void)
{
printf("基本型のバイト数を表示します。\n");
printf("char型:%d\n", (int)sizeof(char));
printf("short型:%d\n", (int)sizeof(short));
printf("int型:%d\n", (int)sizeof(int));
printf("long型:%d\n", (int)sizeof(long));
printf("float型:%d\n", (int)sizeof(float));
printf("double型:%d\n", (int)sizeof(double));
printf("long double型:%d\n", (int)sizeof(long double));
return (0);
}
なお、char型以外の基本型の大きさは処理系によって異なります。
■ 根拠 ■
標準C
| §6.3.3.4
| The sizeof operator
|
標準C99
| §6.5.3.4
| The sizeof operator
|
標準C++
| §5.3.3
| Sizeof
|