一、左边英文,右边缩写
binary 二进制的 BIN
octal 八进制的 OCT
hexadecimal 十六进制的 HEX
decimal 十进制的 DEC
二、
uint16 :无符号16bit 整数,
uint32:无符号32bit整数,
unit8:无符号8bit整数,
int8:有符号8bit整数。
u8是无符号字符型,vu8是volatile unsigned char的类型,前者很容易理解,后者的话是为了防止编译器将你定义的变量自动优化掉,以防出现未知情况。一般普通变量都可不加volatile,但是在中断里面所需要执行的变量需要加volatile。
volitale 直接从内存取数据,避免编译器偷懒 从寄存器取数据,当数据发生变化时,没有及时更新
其作用是程序更加简洁,增强可移植性和可维护性,尤其是在16位机器,32位,或者是64位机器上相互之间移植的时候只需要修改这些宏定义就可以满足要求了,而不需要去修改整个工程里边的每一个变量定义。
在nesc的代码中,你会看到很多你不认识的数据类型,比如uint8_t等。咋一看,好像是个新的数据类型,不过C语言(nesc是C的扩展)里面好像没有这种数据类型啊!怎么又是u又是_t的?很多人有这样的疑问。论坛上就有人问:以*_t结尾的类型是不是都是long型的?在baidu上查一下,才找到答案,这时才发觉原来自己对C掌握的太少。
那么_t的意思到底表示什么?具体的官方答案没有找到,不过我觉得有个答