为什么输入和输出都是 p[i].name ,不懂,求解答
#include<stdio.h>
int main()
{
struct student
{
char name[20];
}a[2],*p=a;
int i;
printf("name:\n");
for(i=0;i<2;i++)
scanf("%s",p[i].name);
for(i=0;i<2;i++)
printf("%s",p[i].name);
return 0;
}
指针p指向了数组a,他们表示的是同一段内存,就是等价的,输入输出可以都是p[i].name,也可都是a[i].name,或者一个p[i].name,一个a[i].name。