有以下程序段 struct st { int x; int *y; } *pt; int a[]={1,2}, b[]={3,4}; struct st c[2]={10,a,20,b}; pt=c; 以下选项中表达式的值为11的是( )。

admin2015-07-28  31

问题 有以下程序段
struct st
{ int x; int *y; } *pt;
int a[]={1,2}, b[]={3,4};
struct st c[2]={10,a,20,b};
pt=c;
以下选项中表达式的值为11的是( )。

选项 A、++pt->x
B、pt->x
C、*pt->y
D、(pt++)->x

答案A

解析 语句"pt=c;"将指针pt指向了结构体数组c的首地址,所以pt与c、c[0]等价,++pt->x值为11,pt->x值为10,*pt->y的值为1,(pt++)->x的值为20,所以答案选A。
转载请注明原文地址:https://kaotiyun.com/show/B7Jp777K
0

最新回复(0)