程序代码:
#include <stdio.h>
struct student{
int num;
int score;
};
int main(){
struct student s[3] = {
{100,100},
{200,200},
{300,300}
};
struct student *p;
p = s;
printf("%d ",(*p).num);
return 0;
}
因为程序正确,所以这里的输出结果是100。
注意下列语句及其输出的值:
(p+1)->num 值为200
(*p++).num 值为100
*p.num 报错,因为.的优先级高于*
(*p)->num 报错,因为(*p)表示一个结构体,而不是指针
阅读 44发布于 3月26日