结构体指针数组问题?

2024-12-28 23:08:08
推荐回答(1个)
回答1:

答案是没有区别,因为数组也是一种指针(一个指向数组中第一个对象的指针)。stu[0]<=>*(stu+0),stu[1]<=>*(stu+1)
所以pstu
=
&stu;结果pstu指向stu的第一个结构体
pstu
=
stu;结果pstu指向整个stu数组,但数组相当于一个指向第一个结构体的指针,所以pstu还是指向了stu的第一个结构体。
指向数组的第一个对象就相价于指向整个数组(数组其它对象的访问:stu[1]或者*(stu+1))。
这个结论其实适用还于所有类型的数组,即:
int
stu[50];
int
*pstu;
那么pstu
=
&stu;和pstu
=
stu;也是等价的