1.下面程序并不会产生编译错误
数组名传递为函数参数后,会退化为指针;
int (*p)[100];指向一维数组的指针
而 *p 是什么?
int fun2(int (*a)[200])
{
printf("sizeof(a):%ld,sizeof(*):%ld\n",sizeof(a),sizeof(*a));
return 0;
}
8,800
int fun(int a[1000][1000])
{
//*a #int *
printf("%ld ,%ld\n",sizeof(a),sizeof(*a));
return 0;
}
8,4000
int main()
{
int a[1][1];
fun(a);
fun2(a);
}
奋斗为了更好的生活。
浙公网安备 33010602011771号