在C語言中,sizeof
是一個運算符,用于計算一個變量、一個數據類型或一個表達式所占的字節數。
語法格式如下:
sizeof(type)
sizeof(expression)
其中,type
是一個數據類型,可以是基本類型(如 int
、char
、float
等)或用戶自定義的數據類型(如結構體、聯合體等);expression
是一個表達式,可以是變量名、數組名、指針等。
sizeof
運算符的返回值是一個 size_t
類型的整數,表示所占的字節數。可以使用 %zu
格式符輸出 size_t
類型的值。
以下是一些示例:
#include <stdio.h>
int main() {
int num = 10;
float f = 3.14;
char ch = 'A';
int arr[5] = {1, 2, 3, 4, 5};
printf("%zu\n", sizeof(int)); // 輸出:4
printf("%zu\n", sizeof(num)); // 輸出:4
printf("%zu\n", sizeof(float)); // 輸出:4
printf("%zu\n", sizeof(f)); // 輸出:4
printf("%zu\n", sizeof(char)); // 輸出:1
printf("%zu\n", sizeof(ch)); // 輸出:1
printf("%zu\n", sizeof(arr)); // 輸出:20
return 0;
}
在上面的示例中,sizeof(int)
、sizeof(float)
、sizeof(char)
分別計算了基本數據類型所占的字節數,sizeof(num)
、sizeof(f)
、sizeof(ch)
分別計算了變量所占的字節數,sizeof(arr)
計算了數組所占的字節數。