首页 百科知识 指向结构体数组的指针

指向结构体数组的指针

时间:2024-10-20 百科知识 版权反馈
【摘要】:p是指向struct student结构体类型数据的指针变量。在for语句中先使p的初值为stu,也就是数组stu第一个元素的起始地址。然后执行p++,使p自加1。p指向了结构体数组中的stu[1]即“走”过了本例中2+20+1+2=25字节的存储单元,p指向了stu[1],输出stu[1]中的各成员值之后,在进行下一次循环。下面的用法是不对的:

10.3.2 指向结构体数组的指针

结构体数组及其元素可以用指针变量来指向。

【例10-4】指向结构体数组的指针的应用。

img531

img532

程序运行结果:

img533

p是指向struct student结构体类型数据的指针变量。在for语句中先使p的初值为stu,也就是数组stu第一个元素的起始地址。在第一次循环中输出stu[0]的各个成员值。然后执行p++,使p自加1。p指向了结构体数组中的stu[1]即“走”过了本例中2+20+1+2=25字节的存储单元,p指向了stu[1],输出stu[1]中的各成员值之后,在进行下一次循环。

注意:程序已定义了p是一个指向struct student类型数据的指针变量,它用来指向一个struct student类型的数据,不应用来指向stu数组元素中的某一成员。下面的用法是不对的:

p=stu[0].name;

编译时将给“警告”信息,表示地址的类型不匹配。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈