C语言编程规约.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《C语言编程规约.pdf》由会员分享,可在线阅读,更多相关《C语言编程规约.pdf(13页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、蒋学平排版,此文章从网上搜索到的,用于学习。2005-4-28 Page 1 of 11.0 简介 代码编写规则应该在建立在一个工程项目之前。该规则应该贯穿整个项目的始终以保证代码的一致性。采用标准的代码编写惯例,可大大简化项目的维护负担。在C语言中可以有多种代码的编写方法(当然其它编程序语言亦如此),你可以尽可能采用一种好的风格,以达到以下目的:可移植 (Portability)连贯 (Consistency)整洁 (Neatness)易于维护 (Easy maintenance)易于理解 (Easy understanding)简洁 (Simplicity)不管你采用那种风格,我所强调的就
2、是:这种风格一定要贯穿你项目的始终。在以后的内容中我还要提到:即使在一个团队合作的大型项目中,这种风格也要贯穿始终。采用通用的代码编写风格可以减轻代码维护的工作量并降低维护费用;这种通用的代码风格还可以避免重写代码。本文将介绍我几年来一直采用的这种编码风格。蒋学平排版,此文章从网上搜索到的,用于学习。2005-4-28 Page 2 of 22.00 基本原则 制定标准的基本目的就是加强代码的可维护性。也就是说代码必须易于阅读,易于理 解,易于测试,易于移植。所有的代码必须采用ANSI C标准函数原型必须采用 ANSI 标准,因此,类型定义应包含在括号之内。保持代码的简单清晰不要在语言中使用晦
3、涩难懂的表述,直接表明你的思想。保持一致性尽可能使用同样的规则。保持标准的灵魂(Keep the spirit of the standards.)Where you have a coding decision to make and there is no direct standard,then you should always keep within the spirit of the standards.避免使用复杂语句一个语句若有太多的决策点(Decision points)将会使代码难于理解,尤其是对于测试。不要使用 GOTO 语句 更新原有代码一旦修改已存在的代码,就要随时更
4、新相关文档以遵守本文中所制定的规则,这将确 保原有代码即时更新。蒋学平排版,此文章从网上搜索到的,用于学习。2005-4-28 Page 3 of 33.00 源代码文件 代码行的长度我不喜欢超过 80个字符宽度的 C程序代码行,只是因为我们过去的显示器只允许显示80个字符的宽度。一代码行的长度应考虑在一张8.5 X 11的打印纸上以每英寸 17个字符的压缩打印模式打印的字符数量。在压缩模式下,你可以调整到 132个字符并在页面左侧预留足够空间的装订线位置。允许每行 132个字符是避免有注释的源代码折行,如果确实需要超过132个以上的字符才能使你的代码更清晰,那也未尝不可。我曾经写过超过 30
5、0个字符宽度的初始化结构的代码(存于 ROM 中)。当然,你可能看不到完整表格的内容,但至少会整齐的多。TAB 键的应用一定不要用 TAB键(ASCII 0 x09)。若使代码缩排一定要用空格键SPACE(ASCII0 x20)。TAB键会在不同的电脑或打印机上显示会有所不同,避免这种现象出现,就是使用空格键代替TAB键。缩行步长:4个空格代码缩行步长以 4个空格(ASCII 字符0 x20)组成。注意“case”语句实际上应缩行 5 个空格。包含一个文件头在每一个源代码文件的开始部分都应包含一个注释块,其内容应包括公司名称,地址,版权,程序员,文件的描述信息等,参见以下示例:/*Micriu
6、m,Inc.*949 Crestview Circle*Weston,FL 33327*(c)Copyright 2000,Micrium,Inc.,Weston,FL*All rights reserved.Micriums source code is an unpublished work and the*use of a copyright notice does not imply otherwise.This source code contains*confidential,trade secret material of Micrium,Inc.Any attempt or p
7、articipation*in deciphering,decoding,reverse engineering or in any way altering the source*code is strictly prohibited,unless the prior written consent of Micrium,Inc.*is obtained.*Filename:*Programmer(s):Joe Programmer(JP)*John Doe(JD)*Created:YYYY/MM/DD*Description:*/一个完整的程序文件是一个包含可执行语句文件,而头文件则不是。
8、这两种文件看起 来很相像,如下所示。一个程序文件将包含部分或全部以下内容。执行文件的布局:File heading (文件头)Revision history (版本更新纪录)蒋学平排版,此文章从网上搜索到的,用于学习。2005-4-28 Page 4 of 4#include (包含文件)#define constants (常量定义)Macros (宏定义)Local data types (局部数据类型定义)Local variables (局部变量)Local tables (局部表单)Local function prototypes(局部函数原型)Global functions(
9、全局函数)Local functions (局部函数)头文件布局:File heading (文件头)Revision history (版本更新纪录)#define constants (常量定义)Global macros (全局宏定义)Global data types (全局数据类型定义)Global variables (全局变量)Externals (外部定义)Global function prototypes(全局函数原型)分隔各主要段落每段应以一个以下示例的注释块开始:/*DATA TYPES*/typedef unsigned char BOOLEAN;/*PROTOTYP
10、ES*/BOOLEAN OSIsTaskRdy(void);头文件必须保证避免在包含文件中重复定义一个数值。推荐使用#ifndef X.代替!defined(X)#if !defined(module_H)#define module_H Body of the header file.#endif/*End of module_H*/蒋学平排版,此文章从网上搜索到的,用于学习。2005-4-28 Page 5 of 54.00 注释 Make every comment count.保持代码与注释分隔清晰可见。尽量少在语句间嵌入注释,永远不要将注释加在如下所示的代码之上。这会使代码难于理解,
11、因为喧宾夺主的注释会转移对代码的阅读。void ClkUpdateTime(void)/*DO NOT comment like this!*/*Update the seconds*/if(ClkSec=CLK_MAX_SEC)ClkSec=0;/*Update the minutes*/if(ClkMin=CLK_MAX_MIN)ClkMin=0;/*Update the hours*/if(ClkHour=CLK_MAX_HOURS)ClkHour=0;else ClkHour+;else ClkMin+;else ClkSec+;不要将单句注释分隔成多行。从来也不要这样做:/*This
12、 type of comment can lead to confusion especially when describing a function like ClkUpdateTime().The function looks like actual code!*/使用注释块分隔代码段。参见以下注释块。注意一个注释块的主题应以大写字符形式居中。/*VARIABLES*/蒋学平排版,此文章从网上搜索到的,用于学习。2005-4-28 Page 6 of 6Use trailing comments as much as possible.As much as possible,always
13、 start the trailing comment on the same column.If the code goes beyond the selected column,place the comment on the line just above while still starting at the same column.As much as possible,line up the terminating comment charaters.Using trailing comments allows the code to be visually separate fr
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 编程 规约
![提示](https://www.deliwenku.com/images/bang_tan.gif)
限制150内