sizeof運算子是一個「一元運算子」,可以得到型別占用的位元組大小。此運算之結果型別為size_t,其實就是個無號整數(unsigned long long)。用法(sizeof(型別)、或 sizeof 常量)
#include <stdio.h>
int main() {
printf("sizeof 13: %zd\n", sizeof 13);
printf("sizeof(13): %zd\n", sizeof(13);
printf("sizeof 5L: %zd\n", sizeof 5L);
printf("sizeof(5L): %zd\n", sizeof(5L));
printf("sizeof 8ULL: %zd\n", sizeof 8ULL);
printf("sizeof(8ULL): %zd\n", sizeof(8ULL));
printf("sizeof(int): %zd\n", sizeof(int));
printf("sizeof(double): %zd\n", sizeof(double));
printf("sizeof(long int): %zd\n", sizeof(long int));
printf("sizeof(char): %zd\n", sizeof(char));
}
運行結果(你的結果不一定和我一樣,因為這個東西是和電腦架構相關的)
sizeof 13: 4
sizeof(13): 4
sizeof 5L: 8
sizeof(5L): 8
sizeof 8ULL: 8
sizeof(8ULL): 8
sizeof(int): 4
sizeof(double): 8
sizeof(long int): 8
sizeof(char): 1
以後在介紹其他資料型態的時候,也會順便介紹那個資料型態在sizeof運算下的結果。