有以下说明和定义语句 struct student {int age;char nurn[8];}; street student stu[3]={{20,"200401"),{21,"200402"),{19,"200403"}); struct s

admin2015-12-25  19

问题 有以下说明和定义语句
struct  student
{int age;char nurn[8];};
street student stu[3]={{20,"200401"),{21,"200402"),{19,"200403"});
struct student  *p=stu;
以下选项中引用结构体变量成员的表达式错误的是

选项 A、(p*)->nurn
B、P->nurn
C、(*p).nurn
D、stu[3].age

答案D

解析 本题考查结构体和结构体指针,stu是一个结构体数组。p是结构体指针,且p指向StU数组,即p指向了stu数组的首元素地址。选项A中p++表示先引用p指针,然后p指向下一个元素,(p++)->num表示取出stu首元素的num值,然后p指向stu[1]元素地址:选项B是通过结构体指针访问结构体元素,使用“->”运算符;选项C中*p代表stu[0]元素,因此(*p).num表示stu[0].num;选项D中,stu数组的长度为3,stu[3]已经超出数组范围,错误。
转载请注明原文地址:https://jikaoti.com/ti/Qai0FFFM
0

最新回复(0)