C语言编程风格
时间:2010-10-19 来源:xiaolzz
1、关键字if、while、for与其后的控制表达式的(括号之间插入一个空格分隔,但括号内的表达式应紧贴括号。例如:
2、双目运算符的两侧各插入一个空格分隔,单目运算符和操作数之间不加空格,
例如i␣=␣i␣+␣1、++i、!(i␣<␣1)、-x、&a[1]等
3、后缀运算符和操作数之间也不加空格,
例如取结构体成员s.a、函数调用foo(arg1)、取数组成员a[i]。
4、,号和;号之后要加空格,这是英文的书写习惯,
例如for␣(i␣=␣1;␣i␣<␣10;␣i++)、foo(arg1,␣arg2)。
5、以上关于双目运算符和后缀运算符的规则并没有严格要求,有时候为了突出优先级也可以写得更紧凑一些,
例如for␣(i=1;␣i<10;␣i++)、distance␣=␣sqrt(x*x␣+␣y*y)等。
但是省略的空格一定不要误导了读代码的人,例如a||b␣&&␣c很容易让人理解成错误的优先级。
C编译器会自动把相邻的多个字符串接在一起,以上两个字符串相当于一个字符串"This is such a long sentence that it cannot be held within a line\n"。
7、switch和语句块里的case、default对齐写,也就是说语句块里的case、default标号相对于switch不往里缩进,但标号下的语句要往里缩进。例如:
8、代码中每个逻辑段落之间应该用一个空行分隔开。
例如每个函数定义之间应该插入一个空行,头文件、全局变量定义和函数定义之间也应该插入空行,
9、6、一个函数的语句列表如果很长,也可以根据相关性分成若干组,用空行分隔。这条规定不是严格要求,通常把变量定义组成一组,后面加空行,return语句之前加空行。
while (true); |
2、双目运算符的两侧各插入一个空格分隔,单目运算符和操作数之间不加空格,
例如i␣=␣i␣+␣1、++i、!(i␣<␣1)、-x、&a[1]等
3、后缀运算符和操作数之间也不加空格,
例如取结构体成员s.a、函数调用foo(arg1)、取数组成员a[i]。
4、,号和;号之后要加空格,这是英文的书写习惯,
例如for␣(i␣=␣1;␣i␣<␣10;␣i++)、foo(arg1,␣arg2)。
5、以上关于双目运算符和后缀运算符的规则并没有严格要求,有时候为了突出优先级也可以写得更紧凑一些,
例如for␣(i=1;␣i<10;␣i++)、distance␣=␣sqrt(x*x␣+␣y*y)等。
但是省略的空格一定不要误导了读代码的人,例如a||b␣&&␣c很容易让人理解成错误的优先级。
6、较长的字符串可以断成多个字符串然后分行书写,例如:
printf("This is such a long sentence that " |
7、switch和语句块里的case、default对齐写,也就是说语句块里的case、default标号相对于switch不往里缩进,但标号下的语句要往里缩进。例如:
→switch (c) { |
8、代码中每个逻辑段落之间应该用一个空行分隔开。
例如每个函数定义之间应该插入一个空行,头文件、全局变量定义和函数定义之间也应该插入空行,
9、6、一个函数的语句列表如果很长,也可以根据相关性分成若干组,用空行分隔。这条规定不是严格要求,通常把变量定义组成一组,后面加空行,return语句之前加空行。
相关阅读 更多 +