{10104,”Wang Min”,’F’,20}};
main( )
{ struct student *p;
for(p=stu; p<stu+3; p++)
printf(“%5d%-20s%2c%4d\n”,p->num,p->name, p->sex,p->age);
}
对“->”、“.”、“[ ]”、“()”的进一步说明
(1) 上述运算符具有相同的运算优先级和结合性;
(2) ++p->num的执行效果等价于: ++(p->num);
(3) (+ +p)->num的执行效果是:先执行p=p+1, 然后再执行p->num(注意p的值已经改变);
(4)(p+ +)->num的执行效果是:先存取p->num,然后再执行p=p+1;
(5) p+ +->num的执行效果同( p + +)->num;
与定义指向普通数组的指针一样,C语言允许定义指向结构数组的指针。如果p是指向结构数组的指针,那么p将指向该结构数组的起始地址(第0个元素的地址)、p+1将指向这个结构数组的第一个元素的地址、p+2将指向该结构数组的第三个元素的地址、…,依此类推。
已有 22658 名学员学习以下课程通过考试
最需教育客户端 软件问题一手掌握
去 App Store 免费下载 iOS 客户端
点击加载更多评论>>