结构体:
结构体的一般声明方法是 : struct 结构体的名字 { 结构体中的成员变量} , 其中每一个成员变量都是必须要进行类型声明的: 也就是 类型名 成员名
在初始化的时候,方法为: struct 结构体的名字 变量名
其中 book 是结构体的名字, 必须要加上关键字 struct ,在对char类型赋值的时候需要用 string.h中的 strcpy函数。
结构体变量的定义和初始化:
第一种方法,只定义了变量的名字,没有给变量赋初值
第二种方法,定义变量的名字,并且直接给变量赋予一定的初始值,直接在其他函数中进行调用
结构体数组:
第一种结构体数组的定义: 在函数中定义
当输入的数组的时候要注意,数组越界的问题。
第二种结构体数组的定义: 在结构体的末尾定义
结构体的嵌套:
在结构体中定义结构体必须是先将要调用的结构体写在前面,不然会找不到。
在函数中可以直接调用已经定义好的结构体变量。
结构体与指针
结构体指针调用的时候,先把地址给结构体指针,然后再赋值,
“->” 是指向结构体成员运算符,它类似于结构成员运算符 “ . ” , 都是用来访问结构体成员的, 不过使用的对象不同,加入用结构体变量来访问结构体成员,就需要用结构成员运算符 “ . ” , 要是用指针来访问结构体成员,就需要用指向结构体成员运算符 “ -> ”。
指向结构体数组的指针
指向结构体数组的指针每自加一次, 就是在原地址的基础上再加一个元素(也就是结构体变量)所占用的字节数,因此会指向下一个结构体变量
结构体和typedef
typedef的第一种用法:
typedef的第二种用法