.结构体类型也可以定义在函数里的,但是如果写在函数里,那么它的作用域也只在函数里
结构体类型定义在函数外,那么就是全局的类型,也就是说所有函数都可以用,但是记得一定要放在最上面,因为没法声明
定义结构体的成员格式是:类型 成员名;
所以,结构体类型里面还可以定义一个其他结构体类型的成员
使用: 变量名.成员名.成员名;
例: struct Person p;
//结构体成员又是一个结构体时的赋值
p.birthDay.year = 1985;
一次性赋值:
变量名.成员名 = (结构体类型){数据1,数据2,数据3....数据n};
例: struct Person p;
p.birthDay = (struct myDate){1985,1,1};
为什么要定义结构体?就是为了多个不同的变量可以组成一个整体,写代码时就更加简洁以及易懂
例子:
#include <stdio.h>
struct myDate{
int year;
int month;
int day;
};
struct person {
char *name;
int age;
struct myDate birth;
};
int main(int argc, const char * argv[]) {
struct person jaychou;
jaychou.birth = (struct myDate){1979,1,18};
jaychou.birth.year=1979;
return 0;
}
|
|