四川长虹电器股份有限公司技术中心浅谈C语言编程规范技术中心交流目的所有的想法都通过编码实现,编码的质量决定了最后产品的质量;统一的编程风格减少程序的bug;有效降低阅读前人代码的时间。技术中心程序排版技术中心程序块要采用缩进风格编写,缩进统一采用4个空格。可以统一采用SourceInsight对C语言进行排版。相对独立的程序块之间/变量说明之后必须加空行。技术中心较长的语句要分成多行书写,划分出的新行适当的缩进,使排版整齐。不允许把多个短语句写在一行中,即一行只写一条语句。inti,j=0;inti=0;intj=0;所有的缩进只能采用空格,避免因编辑器不同而导致代码混乱。技术中心if/for/do/while/case/switch/default等语句自占一行,且if/for/do/while等语句的执行语句部分无论多少都要加{}.程序分界符应各独占一行并位于同一列,同时与引用他们的语句左对齐。技术中心在两个以上的关键字/变量/常量进行对等操作时,它们之间的操作符之前/之后或者前后要加空格。-操作符除外技术中心注释一般来说,注释是整个源代码的20%左右。禁止滥注释。禁止使用i/j/k这种无意义的变量,最好是变量名的自注释。避免在一行代码或表达式中添加注释。技术中心可读性技术中心注意运算符的优先级,并用括号明确表达式的操作顺序。避免使用幻数,通过有意义的枚举或者宏来替代。技术中心源代码中关系较为紧密的代码应尽可能相邻。不要使用难懂的技巧性很高的语句,除非很有必要时。使用常量判断时,尽量将常量放在左边。技术中心变量和函数命名对于C语言,尽量统一采用Linux命名格式,即模块名+动宾结构scsi_add_host/scsi_remove_host所有的变量必须初始化技术中心尽量编写可以重入的函数重入的概念?尽量在函数中少使用static。全局变量和局部变量的命名最好区分建议:全局变量使用g_*****技术中心函数和过程技术中心函数的规模尽量控制在200行一个函数仅完成一个功能为简单功能编写一个函数技术中心尽量避免设计多参数函数对外接口,必须检查函数参数的有效性。技术中心申请的资源必须释放,每个错误返回处都需要释放前面申请的资源。技术中心编写Linux内核代码的时候,注意少使用很大的局部变量,Linux的内核栈为4K,过大的局部变量会导致栈空间使用完,出现异常。设计高扇入,合理扇出的函数。一个函数的圈复杂度不能过大,一般超过15则需要整改。技术中心尽量减少if/else的使用,if/else在代码维护阶段很容易导致代码腐烂switch/case可以较好的防止代码腐烂,但仍然会增加代码的全复杂度。技术中心结语代码的质量就是产品的质量,编程规范可以有效提高代码质量。良好的编程规范可以减少调试代码时间。良好的编程规范是第一步。技术中心结束谢谢!