日期:2014-05-16  浏览次数:20719 次

linux内核代码风格

代码风格如同人的品味与修养,一定程度上体现着程序员做事的态度。

常见的代码风格 有Linux内核代码代码风格,也有各大公司自己规定的风格,这里简单描述下内核的代码风格:

 1. 缩进和空白

(1)if, while, for 与其后左括号间添加一个空格分隔,同时 括号内 表达式紧贴括号

while (a == 3)

(2)UNIX系统标准的字符终端是24行80列,所以字符较长时 应折行写,这行后用空格和上面的表达式对齐,例

if (sqrt(x*x + y*y) > 5.0
     && x < 0.0
     && y > 0.0)

(3) 关于括号的对齐,如 if / else, while, do/while, for, switch

if (...) {
} else if (...) {
...
}

switch () {
case 'A':
		....
case 'B':
		....
default:
		....
}

2. 注释 

较长时放在函数正上面,紧贴无空格

/* 
 * name: function_test
 * function: to test
 */
 void function_test()
 {
	....
 }	

较短可放在同行右侧

int num; /* to count the num */

3. 标识符命名

(1)常用的缩写

count -> cnt
block -> blk
length -> len
window -> win
message -> msg
temporary -> tmp
internationalization -> i18n
tans -> x
transmit -> xmit

常量用大写  例 常量 QUEUE_LEN
变量用小写+下划线 例 变量 radix_tree_insert
同类的标识符风格有 微软的匈牙利命名法,此处建议用 内核风格,养成习惯 并保持一样


4. indent

可以借助工具indent将 代码转换为某种风格, 此处将 此处 代码转换为 内核代码风格:

indent -kr -i4 main.c 即可

其中 -kr 选项表示使用K&R风格, -i4表示 缩进 4个空格。但indent不能为代码自动添加 空白行,所以更多需要自己养成习惯