变量的概念

变量(官方定义):是用来存储单片机/计算机系统中 计算的过程或结果数值的一个抽象概念
变量:就是一种在程序执行过程中其值不断变化的量。
常量:就是其定义之后数值不会变化的量

变量的数据类型

数据类型汇总

类型 适用范围 定义方法
布尔型 (bool)1-真 0-假 常用bit ,用bool和bit都能定义。
字符型 1byte,8个bit char
整数型 整数型与字符型存储的数据长度不一样 int、short、long
浮点型 小数 float、double

不同单片机中不同的数据类型所对应的位数也有所不同。
在stm32中,short为16bit,int和long为32bit。
对于有符号的数据类型,最高位表示正负,1为负,0为正。

单片机变量定义及其范围:

数据类型 关键字 所占位数 表示数的范围
无符号字符型 unsigned char 8 0 ~ 255
有符号字符型 char 8 -128 ~ 127
无符号整型 unsigned int 16 0 ~ 65535
有符号整型 int 16 -32768 ~ 32767
无符号长整型 unsigned long 32 0 ~ 2322^{32}-1
有符号长整型 long 32 -2312^{31} ~ 2312^{31}-1
单精度实型 float 32 3.4e-38 ~ 3.4e38
双精度实型 double 64 1.7e-308 ~ 1.7e308
位类型 bit 1 0 ~ 1

定义变量的规则

1、变量是由 英文字母(大小写)、数字、下划线 组成;
2、变量名以 英文字母或下划线 开头;
3、变量名中的字母是区分大小写的;
4、变量名不能是关键字;
5、变量名中不能包含空格、标点符号和类型说明符(可包含下划线)。

C语言中的关键字:

1
auto、break、case、char、const、continue、default、do、double、else、enum、extern、float、for、goto、if、int、long、register等等

全局变量和局部变量的区别:

1
2
全局变量:在函数外
局部变量:在函数内