对于一个数组,sizeof 运算符返回数组元素的个数;但是如果把数组作为参数传入一个函数就会发生指针降级,这时sizeof运算符就会返回一个指针的大小
#include <stdio.h>#include <stdlib.h>void f(int array[]){ PRintf("%d/n",sizeof(array));}int main(){ int array[10]; printf("%d/n",sizeof(array)); ///输出40 f(array); ///输出4 int *arrayPoint = array; printf("%d/n",sizeof(arrayPoint)); ///对于指针输出为4 return 0;}
新闻热点
疑难解答