文件组织和格式
xxx
宏
-
宏的值部分如果多于一项,一定要加括号。
#define ERROR_STRING_LENGTH 50+1 //ERROR:值部分(50+1)多于一项,容易在运算过程中被高优先级运算符打乱结合顺序 #define ERROR_STRING_LENGTH (50+1) //TRUE:
-
宏的值部分不要以分号结尾。
-
宏函数的传入的参数不要出现运算。
-
不要用宏来改写语言,替换关键字之类的行为。
-
宏函数的每个参数都要用括号括起来。不带参数的宏函数也要加括号,暗示其为宏函数。宏函数的函数体中多条语句要放在大括号中。
-
尽量使用常量来代替同样功能的宏。禁止使用inline函数。新类型的定义尽量使用typedef来代替宏定义。
代码格式
- 程序块要采用缩进风格,且tab==4space
- 函数之间2个连续空行,函数内部不能有连续空行。局部变量申明和代码用空行分开。代码逻辑段用空行分开。
- 函数名之后要紧跟左括号。所有关键字之后要留空格,突出关键字。逗号、分号之后要留空格。二元操作符前后要留空格。一元操作符前后不留空格。数组,指针操作前后不留空格。
- 在已经非常清晰的语句中没必要留空格
- 一行程序要小于80个字符。长语句、长循环、长判断、函数参数较长都要分多行写,在低优先级操作符处划分新行,新行行首4空格缩进。一行只写一条段语句。if、for、do、while、case