结构体时一种数据类型
可以简单理解为int
只是需要自己定义
struct person
{
int age;
int high;
char name[20];
};
简单的结构体定义如上所示
在使用结构体之前 需声明
struct person person1,*p,*p1=(struct person *)malloc(sizeof(struct person));
这是几种常用的声明方式
第一种是 最常规的,后面两种是指针
由于结构体和数组不一样 所以赋值需要取地址符号
person1.age=110;
person1.high=198;
p=&person1;
对于p1指针 需要给他分配内存,不然会报错;
结构体与函数 和以前的函数没有区别
void ex1(struct person p)
{
printf("%d\n",p.age);
}
void ex2(struct person *p)
{
printf("the point is\n");
printf("%d\n",p->age);
}
一个是传递一个结构体
一个是传递一个结构体指针