-
static声明变量时,若位于函数内声明,则具有以下特点
(1)下次访问时,其值为上次最后访问时的值
(2)下次访问时不会再次执行赋初值的语句,且一开始未赋初值则默认为0
(3)有static声明的变量与同名auto变量不冲突.若位于外部声明:在定义不需要与其他文件共享的全局变量时,加上static关键字能够有效地降低程序模块之间的耦合,避免不同文件同名变量的冲突,且不会误使用。 -
extern:若一个数据为全局变量但需在声明前调用,则应在其前声明extern.
-
C99中才有bool型变量,需添加库<stdbool.h>
-
结构体struct
- 声明
struct 名字
{
数据类型 成员名1
。。。。。。
};
- 定义 struct 名字 变量名;或者直接接在第二个花括号之后定义
- 结构体指针使用与其他无异,只有在使用成员时要用p->成员名
- 定义别名 typedef
- typedef 原名字 新名字
- 共用体union
1)声明定义与struct类似
2)共用体中同时只有一个成员有意义,其为最后一次赋值的成员
- 枚举enum
1)声明 enum 名字{枚举名}
2)定义enum 名字 变量名
3)赋值时可直接用枚举名赋值,也可用数字赋值(默认第一个变量名为0,以后一次+1)
4)可在声明枚举名的同时利用赋值语句为枚举名赋值