C语言结构体指针

定义一个指针的基本类型为某种结构体时,该指针变量的值就是结构体变量在内存中的起始地址。图 1 所定义的如下结构指针 *p 指向该结构体变量在内存中的起始地址。
struct student{
    char name[20];
    char sex;
    float score;
}*p;

定义为结构体类型的指针
图 1:定义为结构体类型的指针

引用上面定义的结构体对象的成员可以用下面两种方法:

(*指针名).成员名     //“.”的运算优先级高于“*”,所以用括号改变其运算顺序
*指针名->成员名    //“->”被称为“指向运算符”

例如:(*p).name 与 *p->name 是等价的。