C言語で式のデータ型を判別する方法
C言語では、sizeof演算子を使用して、式のデータ型を調べることができます。sizeof演算子は、式の結果のバイトサイズを返します。返されたサイズによって、式のデータ型を特定できます。
例えば、以下のコードがあるとします。
int a = 10;
float b = 3.14;
char c = 'A';
printf("Size of a: %zu\n", sizeof(a));
printf("Size of b: %zu\n", sizeof(b));
printf("Size of c: %zu\n", sizeof(c));
出力は次のとおりになります。
Size of a: 4
Size of b: 4
Size of c: 1
アウトプットの結果から、sizeof(a) と sizeof(b) はどちらも 4 を返していることがわかります。これは、a と b のデータ型はどちらも 4 バイトの整数型と浮動小数点型であることを示しています。一方、sizeof(c) は 1 を返しており、これは c のデータ型が 1 バイトの文字型であることを示しています。
sizeofの返り値から表現のデータ型を判断できます。