機能 |
型のサイズをバイト単位で計算する。 ただし、式自体は評価はされない。つまり、式に代入式などを記述しても代入などは行われない。 |
---|---|
定義 |
sizeof 単項式 または sizeof ( 型名 ) |
実装例 |
#include <stdio.h> int main(void) { int a = 0; /* 単項式のサイズ */ printf("a = %d\n", sizeof a); /* int型のサイズ */ printf("(a) = %d\n", sizeof(a)); /* int型のサイズ */ printf("123 = %d\n", sizeof 123); /* int型のサイズ */ printf("(123) = %d\n", sizeof(123)); /* int型のサイズ */ printf("1.23 = %d\n", sizeof 1.23); /* double型のサイズ */ printf("(a=10) = %d\n", sizeof(a=10)); /* int型のサイズ */ printf("Value = %d\n", a); /* 直前にa=10を行ったが評価されないため */ /* 初期値の0のままとなる */ /* 型のサイズ */ printf("int = %d\n", sizeof(int)); /* int型のサイズ */ printf("int[5] = %d\n", sizeof(int[5])); /* int型のサイズ×配列要素数5 */ printf("double = %d\n", sizeof(double)); /* double型のサイズ */ return 0; } |
実行結果 |
a = 4 (a) = 4 123 = 4 (123) = 4 1.23 = 8 (a=10) = 4 Value = 0 int = 4 int[5] = 20 double = 8 |
sizeof