下面程序的输出结果为()。struct st { int x; int*y; } *p; int dt[4]={10 20 30 40}; struct st
结果,程序
已帮助 人
下面程序的输出结果为()。struct st { int x; int*y; } *p; int dt[4]={10,20,30,40}; struct st aa[4]={ 50,&dt[0],60,&dt[1], 70,&dt[2],80&dt[3]}; main() { p=aa; printf("%d ",++p->x); printf("%d ",(p)->x); printf("%d ",++(*p->y)); }A.10 B.50 C.51 D.60 20 60 60 70 20 21 21 31
-
参考答案:Cp指向aa的首地址,++p->x首先取x的值,再增1,即50+1;(++p)->x使p指向下一元素,然后取其值,即60,++(*p->y)取y指向的值,即20,然后增1,即20+1
