1.数据类型
C语言中的数据由数字和字符构成,有以下三种数据类型:字符,整数,浮点数
注:整数默认是十进制数据,前面加0表示8进制数据,前面加0x表示16进制数据;
2.变量
2.1.变量类型
变量用来存储数据,本质是内存中的一段存储空间,存储空间大小由变量类型所决定,所以变量类型必须与所存储的数据类型相对应,变量名是用户给这段存储空间的地址取的别名
数据类型 | 占用字节 | 值域 | |
---|---|---|---|
字符型 | char | 1 | -128~127 |
字符型 | unsiged char | 1 | 0~255 |
整型 | int | 2 | -32768~32767 |
整型 | unsiged int | 2 | 0~65535 |
整型 | long | 4 | |
整型 | unsiged long | 4 | |
整型 | long long | 8 | |
整型 | unsiged long long | 8 | |
浮点型 | float | 4 | |
浮点型 | double | 8 |
在定义变量的时候,增加关键字可以让变量拥有一些特殊性质,如:
2.2.全局变量
通常变量在函数中定义,称为局部变量,只能被该函数访问;全局变量在c文件中的函数外定义,可以被该c文件的所有函数访问,通常在单片机中用来做标志位;
2.3.const
const用来定义常量,在单片机中,这个常量被放在Flash中,也可以用const定义常量数组
2.3.static
static用来定义静态变量,在程序结束之前,即使被多次重复定义,也只有一个内存空间;
2.4.volatile
volatile定义“易变的”变量,在单片机中用于读取外部寄存器的变量由于没有进行任何操作,编译器会将其优化,就加入volatile防止该变量被优化;
2.5.extern
extern定义的变量表明该变量在别的C文件中定义,编译器会自行去寻找;