假設我們使用的平台 int 是 4 個 bytes,來看以下程式片段:
int a[5];得到的結果為:
printf("sizeof(a) = %d", sizeof(a)); /* [1] */
printf("sizeof(a[0]) = %d", sizeof(a[0])); /* [2] */
printf("Num of elements = %d", sizeof(a)/sizeof(a[0])); /* [3] */
- 20 (array a 有 20 個 bytes)
- 4 (每個 element 為 4 bytes)
- 5 (共有 5 個 elements)
要把 array a 的內容清為 0 的話可以用:
#include <string.h>
memset((void *)a, 0, sizeof(a));
沒有留言:
張貼留言