求下面問題的輸出:
#include <stdint.h>
#include <stdio.h>
void print_size(int32_t array[10]){
printf("%d\n", sizeof(array));
}
int main () {
int32_t myArray[10];
printf("%d ", sizeof(myArray));
print_size(myArray);
}
答案是40 8
本題要注意幾點:
1杆煞、sizeof(數(shù)組名)魏宽,返回的整個數(shù)組占據(jù)的字節(jié)數(shù)腐泻。在這里,數(shù)組長度為10队询,每個4字節(jié)派桩,所以,總共40字節(jié)蚌斩。
2窄坦、在64位操作系統(tǒng)中,地址為64位凳寺,也就是指針64位,占8字節(jié)彤侍。
2肠缨、通過函數(shù)調(diào)用后,數(shù)組名退化成指針盏阶,占8字節(jié)晒奕。