Linux C语言编码风格

转载 2016年08月30日 16:58:34

最近看了《Linux C编程一站式学习》觉得编码风格还是挺重要的,在学习的过程中在博客中做下相关总结,应该会对自己的编码风格印象深刻些,希望自己以后都能遵守这样的好的编码风格。原文地址:http://docs.linuxtone.org/ebooks/C&CPP/c/ch09.html

1、缩进和空白
1)关键字if, while, for与其后的控制表达式的括号“(”之间插入一个空格分隔,但括号内的表达式应
      紧贴括号。例如: while(1);
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)由于标准的Linux终端是24行80列的,接近或大于80个字符的较长语句要折行写,折行后用空
      和上面的表达式或参数对齐。
      例如:if␣(sqrt(x*x␣+␣y*y) > 5.0
            &&␣x␣<␣0.0 
            &&␣y␣>␣0.0)
  或者  foo(sqrt(x*x␣+␣y*y),
            a[i-1]␣+␣b[i-1]␣+␣c[i-1])
7)较长的字符串可以断成多个字符串然后分行书写。
      例如:printf("This is such a long sentence that " 
                          "it cannot be held within a line\n");

2、注释
1)单行注释应采用/*␣comment␣*/的形式,用空格把界定符和文字分开。
       多行注释最常见的是这种形式:
               /*  
                *Multi-line 
                *␣comment 
                */
2)整个源文件的顶部注释。说明此模块的相关信息,例如文件名、作者和版本历史等,顶头写不缩进。格式和1)差不多。
3)函数注释。说明此函数的功能、参数、返回值、错误码等,写在函数定义上侧,和此函数定义之间不留空行,顶头写不缩进。
4)代码行右侧的简短注释。对当前代码行做特别说明,一般为单行注释,和代码之间至少用一个空格隔开,一个源文件中所有的右
      侧注释最好能上下对齐。
5)复杂的结构体定义比函数更需要注释。
6)复杂的宏定义和变量定义也需要注释。

3、标识符
1)标识符的命名要清晰明了,可以使用完整的单词和大家易于理解的缩写。短的单词可以通过去元音形成缩写,较长的单词可以取
      单词的头几个字母形成缩写,也可以采用大家基本认同的缩写。例如count写成cnt,block写成blk,length写成len,window写成
        win,message写成msg,temporary可以写成temp,也可以进一步写成tmp。
2)内核风格规定变量、函数和类型采用全小写加下划线的方式命名,常量(宏定义和枚举常量)采用全大写加下划线的方式命名。
3)全局变量和全局函数的命名一定要详细,不惜多用几个单词多写几个下划线,例如函数名radix_tree_insert,因为它们在整个项目
      的许多源文件中都会用到,必须让使用者明确这个变量或函数是干什么用的。局部变量和只在一个源文件中调用的内部函数的命
     名可以简略一些,但不能太短,不要使用单个字母做变量名,只有一个例外:用i、j、k做循环变量是可以的。
4)建议不要用汉语拼音作为标识符名称,可读性极差。



举报

相关文章推荐

C语言编码风格

很多人不重视这点,认为无所谓,甚至国内的绝大多数教材也不讨论这个话题,导致学生入公司后仍要进行编码风格的教育。我接触过很多学生,发现他们由于平时缺乏这种意识,养成了不好的习惯,导致很难改正过来。代码没...

C语言编码风格

很多人不重视这点,认为无所谓,甚至国内的绝大多数教材也不讨论这个话题,导致学生入公司后仍要进行编码风格的教育。我接触过很多学生,发现他们由于平时缺乏这种意识,养成了不好的习惯,导致很难改正过来。代码没...

精选:深入理解 Docker 内部原理及网络配置

网络绝对是任何系统的核心,对于容器而言也是如此。Docker 作为目前最火的轻量级容器技术,有很多令人称道的功能,如 Docker 的镜像管理。然而,Docker的网络一直以来都比较薄弱,所以我们有必要深入了解Docker的网络知识,以满足更高的网络需求。

Linux C语言编码风格

最近看了《Linux C编程一站式学习》觉得编码风格还是挺重要的,在学习的过程中在博客中做下相关总结,应该会对自己的编码风格印象深刻些,希望自己以后都能遵守这样的好的编码风格。原文地址:http://...

Linux下C语言编码的风格

Linux下C语言编码的风格 Linux 作为 GNU家族的一员,其源代码数以万计,而在阅读这些源代码时我们会发现, 不同的源代码的美观程度和编程风格都不尽相同。 例如下面的glibc 代码...

R语言编码风格

来自 Google 的 R 语言编码风格指南 R 语言是一门主要用于统计计算和绘图的高级编程语言. 这份 R 语言编码风格指南旨在让我们的 R 代码更容易阅读、分享和检查. 以下规则系与 Google...

C语言编码风格和标准

注:该文章博主还有很多好的文章,可以到他主页看看! 出处:http://tonybai.com/2013/11/26/the-full-text-of-recommended-c-style-and-...

C语言编码风格(二)——注释

单行注释应采用的形式,用空格把界定符和文字分开。多行注释最常见的是这种形式: 也有更花哨的形式: 使用注释的场合主要有以下几种。 1、整个源文件的顶部注释。说明此模块的相关信息,例如...

Linux C编码风格

很久之前从网上下载的一篇文档,现在也忘记具体地址了,打算清一下电脑,贴在这里保存吧。 代码风格好不好就像字写得好不好看一样,如果一个公司招聘秘书,肯定不要字写得难看的,同理,代码风格糟糕的程...

C语言程序风格

1.   MACRO   /* Cache size */ #define L2C_SIZE_256K      0x00 /*&#...
  • chilv
  • chilv
  • 2016-12-10 10:45
  • 87

C语言代码书写风格

相信经常coding的同学在项目中看别人的代码一定会像我一样的头痛,特别是有点强迫症的程序猿在看和自己风格差距较大的代码的时候内心甚至会出现烦躁和想去“改正”的念头。下面就为大家总结下一些常见的代码编...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)