struct st{ int n; struct st *next; }; static struct st a[3]={5,&a[1],6,&a[2],7,},*p=&a[0]; 若要使printf("%d\n",____)输出值为6,。
A p++->n相当于(&a[0]->n)
B p->n++相当于(&a[0]->n)
C (*p).n++相当于(a[0].n)
D ++p->n相当于++(p->n)
答案是d
为啥B和C不是6它们不也自+
为啥B和C不是6它们不也自+
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
qfl_sdu 2021-10-13 23:11关注B p->n++ 等价于b = p->n; b++,所以相当于(&a[0]->n)++,所以B是错误
C (*p).n++ ,*p = a[0],所以(*p).n++相当于(a[0].n)++,所以C是错误的本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报