sizeof()
是 C 語言中的一個運算符,它用于計算數據類型或對象所占用的內存字節數
#include<stdio.h>
int main() {
printf("Size of int: %lu bytes\n", sizeof(int));
printf("Size of float: %lu bytes\n", sizeof(float));
printf("Size of double: %lu bytes\n", sizeof(double));
printf("Size of char: %lu bytes\n", sizeof(char));
return 0;
}
#include<stdio.h>
typedef struct {
int id;
float score;
char name[20];
} Student;
int main() {
printf("Size of Student structure: %lu bytes\n", sizeof(Student));
return 0;
}
#include<stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5};
int n = sizeof(arr) / sizeof(arr[0]);
printf("Size of array: %lu bytes\n", sizeof(arr));
printf("Number of elements in the array: %d\n", n);
return 0;
}
注意事項:
sizeof()
的結果是一個 size_t
類型的值,因此在打印時需要使用 %zu
或 %lu
(在某些編譯器中可能需要使用 %u
)格式說明符。sizeof()
計算指針變量的大小時,它將返回指針本身所占用的內存大小,而不是指針所指向的數據的大小。