结构体是C语言中特别重要的知识点,结构体使得C语言有能力描述复杂类型,通过下面的例子来理解和学习。
//结构体可以让C语言创建新的类型出来
//比如创建一个学生的信息,包括名字、年龄以及分数
struct stu
{
char name[20];
int age;
double score;
};
//创建一个书的类型,包括书名、价格以及id号码
struct book
{
char name[20];//成员变量
float price;
char id[30];
};
//结构体的创建和初始化
int main()
{
struct stu s = {"张三",20,85.5};
printf("第一次打印:%s %d %lf",s.name,s.age,s.score);//.操作符,“结构体变量.成员变量”
struct stu * ps = &s;//struct stu是结构体指针
printf("第二次打印:%s %d %lf\n", (* ps).name, (*ps).age, (*ps).score);
//当我们把一个结构体的地址交给指针的时候,它也能够打印出来相应的内容。
printf("第三次打印:%s %d %lf\n",ps->name,ps->age,ps->score);
//结构体指针->成员变量名
return 0;
}
运行结果为:
第一次打印:张三 20 85.500000第二次打印:张三 20 85.500000
第三次打印:张三 20 85.500000