首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 平面设计 | 技术专题 | 电子书下载 | 教学视频 | 源码下载 | 搜索 | 博客 | 论坛
中国IT实验室Linux频道
Google
首页 入门 Linux编程 系统管理 网络管理 Linux认证 Unix/BSD Linux数据库 Linux集群 Linux手册 Linux下载 Ubuntu 论坛 专题 RSS
您现在的位置: 中国IT实验室 >> Linux >> 系统管理 >> 内核技术 >> 正文

高手风范 Linux操作系统内核编码风格

这篇简短的文章描述了Linux内核首选的编码风格。编码风格是很个人化的东西,我不会把自己的观点强加给任何人。但是,Linux内核的代码毕竟是我必须有能力维护的,因此我宁愿它的编码风格是我喜欢的。请至少考虑一下这一点。

首先,我建议打印一份《GNU编码标准》,不要阅读它。烧掉它,它不过是象征性的姿态。然后,请看:

第 1 章: 缩进

Tabs(制表符)是8个字符的大小,因此缩进也应该是8个字符的大小。有些叛逆主张试图把缩进变成4个(甚至是2个!)字符的长度,这就好象试图把PI (案,圆周率)定义成3是一样的。

依据:缩进背后的思想是:清楚地定义一个控制块从哪里开始,到哪里结束。尤其是在你连续不断的盯了20个小时的屏幕后,如果你有大尺寸的缩进。你将更容易发现缩进的好处。

现在,有些人说8个字符大小的缩进导致代码太偏右了,并且在一个80字符宽的终端屏幕上看着很不舒服。对这个问题的回答是:如果你有超过3个级别的缩进,你就有点犯糊涂了,应当修改你的程序。

简而言之,8个字符的缩进使程序更易读,而且当你把功能隐藏的太深时,多层次的缩进还会对此很直观的给出警告。要留心这种警告信息。

第 2 章: 放置花括号

C程序中另一个要主意的就是花括号的放置。与缩进尺寸不同的是,关于如何放置花括号没有技术上的理由。但是,首选的方法是象先知Brain Kernighan和Dennis Ritchie展现的那样:把左括号放在行尾,右括号放在行首。也就是:

if (x is true) {
                we do y
        }
        
        然而,还有另外一种情况,就是函数:函数应当把左右括号都放在行首。也就是:
        
        int function(int x)
        {
                body of function
        }

叛逆的人们所在皆有。他们说,这样会导致…嗯,不一致性(案,指函数的花括号使用与其他情况不统一)。但是所有正确思考的人都知道:(1) K&R是正确的;(2) K&R还是正确的。 而且,函数与别任何东西都不一样(在C语言中你没法隐藏它)。

注意,右括号所在的行不应当有其它东西,除非跟随着一个条件判断。也就是do-while语句中的“while”和if-else语句中的“else”。象这样:

do {
                body of do-loop
        } while (condition);
        
和:
        
        if (x == y) {
                ..
        } else if (x >; y) {
                ...
        } else {
                ....
        }

依据: K&R。

而且,注意这种花括号的放置减少了空行的数目,并没损害可读性。因此,当屏幕上不可以有很多空行时(试想25行的终端屏幕),你就有更多的空行来安插注释。

[1] [2] [3] 下一页

【责编:Youping】
中国IT教育
相关产品和培训
文章评论
 友情推荐链接
 专题推荐

 ·防范Linux病毒 打造没有病毒的乐土…
 ·Linux Shell编程实用指南…
 ·Linux日志分析与管理
 ·揭密Linux内存管理
 ·邮件服务Sendmail应用配置
 ·Linux 安全管理…
 ·Linux 下DNS服务器架设攻略…
 ·Linux 下的路由的配置与应用…
 ·专题:Apache实用手册
 ·全面剖析Linux文件系统
 今日更新
 认证培训
 频道精选
 Windows频道导航