1.宏定义:
关键字:#define
用途:用一个字符串代替一个数字,便于理解,防止出错;提取程序中经常出现的参数,便于快速修改
定义宏定义:#define ABC 123456(将ABC的定义赋予到123456上)
引用宏定义:int ABC = a;(将a的值赋予ABC,同时123456的值也等于a的值)
2.typedef:
关键词:typedef
用途:将一个比较长的变量类型名换个名字,便于使用(只能用于变量类型名的置换)
定义typedef:typedef unsigned char uint8_t;(将unsigned char这一变量类型名换为更加简短的uint8_t)
引用typedef:uint8_t a;(定义一个八位无符号char类型,等同于unsigned char a;)
3.两者区别:宏定义能用于任意字符串的定义而typedef只能用于变量类型的定义,一般为了防止出错,在定义变量类型时最好使用typedef