在turbo C中,有如下代码:在main函数中测试数组名sizeof(x)为160字节,
而在子函数中得到的结果是2,请大家解释一下原因。
void sizeofmat(int *);
main()
{
int i,j;
unsigned short x[8][10]={{1,2,3,4,5,6,7,8,9,0},
{2,3,4,5,6,7,8,9,0,1},
{3,4,5,6,7,8,9,0,1,2},
{4,5,6,7,8,9,0,1,2,3},
{5,6,7,8,9,0,1,2,3,4},
{6,7,8,9,0,1,2,3,4,5},
{7,8,9,0,1,2,3,4,5,6},
{8,9,0,1,2,3,4,5,6,7}};
i=sizeof(x);
printf("sizeof(x) is %d\n",i);
sizeofmat(x);
getch();
}
void sizeofmat(int *x)
{
printf("sizeof *x is %d\n",sizeof(x));
}