结构体成员的访问(->和 . )
转载转载转载转载转载转载转载转载转载转载转载转载转载转载转载
c语言中有“->”和“.”!
这两个运算符都是用来访问结构体的。比如有结构体
struct student
{
int math;
int english;
};
并且有两个变量
struct student zhangsan;
struct student *p;
p=&zhangsan;
你要留意zhangsan是结构体的名字,p是指向这个结构体的指针。
那么访问结构体的两个变量时就只能用
zhangsan.math=60;
zhangsan.english=70;
p->math=80;
p->english=90;
即结构体的名字用点,相当于“的”,某个结构体的某个分量。
指向结构体的指针就用“->”,相当于指针指向的结构体的分量。(你看那箭头,就好比指针)
》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》
一、如何定义结构体和初始化结构体
1.定义结构体
struct book {
char title[MAXTITL];
char author[AXAUTL];
float value;
} library;
注解:此处定义了一个名字为 library 的struct book结构体,如果要继续定义新的结构体,如:
struct book library2; // 这样便定义了一个新的strut book类的结构体 library2
2.初始化结构体
两种方式,一种在定义结构体时初始化,另一种利用结构体成员运算符进行引用初始化。
二、如何引用该类结构体成员
在定义了 library 和 library2 两个结构体后,若想要访问其内部成员,应该使用结构体成员运算符点(.)就可以,例如:
library.value = 9; library.title
三、如何使用结构体指针访问结构体成员
1、结构体指针的定义和初始化
struct book *it;
it = &library;
2、使用结构体指针it访问结构体成员变量
it->value = 9;
it->title;
转载转载转载转载转载转载转载转载转载转载转载转载转载转载