定义一个指针的基本类型为某种结构体时,该指针变量的值就是结构体变量在内存中的起始地址。图 1 所定义的如下结构指针 *p 指向该结构体变量在内存中的起始地址。
struct student{
char name[20];
char sex;
float score;
}*p;
引用上面定义的结构体对象的成员可以用下面两种方法:
(*指针名).成员名 //“.”的运算优先级高于“*”,所以用括号改变其运算顺序
*指针名->成员名 //“->”被称为“指向运算符”
例如:(*p).name 与 *p->name 是等价的。