C
尽量使用#define代替enum
因为枚举常量的标识符与变量和typedef名称属于同一个重载分类。 声明会被覆盖
区分字符型和整型
在进行嵌入式通信编程时,很多人都不搞不清楚字符型和整型之间的区别。 这应该从这两种类型的存储形式和表现形式来区分。
字符型底层存储形式一般是ascii码,一个signed char的正数足够表示所有的ascii字符。 表现形式是单个字符。
整型的底层存储形式一般是补码,大小范围取决于具体的类型和占用的字节数。 表现形式通过printf系函数显示出来。
指针的const使用
const指针有两种方式。
在*之前加const表示指向的值不能变。
在*之后加const表示指针本身不能变。
宏的一些使用
将标识符转为字符串,自动转义和加括号。
#define TEST(a, b) printf(#a "<" #b)
标记合并
#define fun(i) fun ## i
// fun(1) 转换为 fun1