若有以下说明和语句: struct st{int n;char * ch;}; struct st a[3]={5,"abc",7,"def",9,"ghk"},*p=a; 则值为6的表达式是 ______。

admin2013-02-23  31

问题 若有以下说明和语句:    struct st{int n;char * ch;};    struct st a[3]={5,"abc",7,"def",9,"ghk"},*p=a;    则值为6的表达式是 ______。

选项 A、p++->n
B、p->n++
C、(*p).n++
D、++p->n

答案8

解析 根据结构变量的存储特点,p+1意味着增加地址值为结构体数组a的一个元素所占的字节数,即p++使p由a[0]指向a[1]起始地址。本题++p->n得到p指向的结构体变量中成员n的值使之加1。因为p指向数组a起始地址,p->n的值为5,再执行自加1运行,结果为6。
转载请注明原文地址:https://kaotiyun.com/show/9TJp777K
0

最新回复(0)