欢迎来到天天文库
浏览记录
ID:37177239
大小:72.81 KB
页数:5页
时间:2019-05-21
《c源代码编码规范样本pd》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、1源代码书写规范本规范适主要适用于用“C/C”语言编写的驱动程序源代码、各种应用程序、对象组件、库函数、可编程逻辑器件源代码、单片机源代码、调试/测试程序源代码、demo程序源代码如果不使用“C/C”语言必须尽量参照本规范执行。本规范试图规范软件工程师在进行编码实现时比须遵循的基本原则和方法达到以下几项主要目标1增加开发过程代码的强壮性、可读性、易维护性2统一代码风格包括惯用法、组织模式等方面3提供一个手工或自动的方式确定软件编码质量的度量标准4使新的开发人员快速适应项目氛围5支持项目资源的复用允许开发
2、人员从一个项目区域或子项目团队移动到另一个而不需要重新适应新的子项目团队的氛围。本规范的大多数规则在许多大公司被采用并以书籍、资料等形式流传。本规范正是在这些资料的基础上综合而成的以下所列的是一些主要参考资料。《C语言编程风格》LuanDoan-MinhRationalSoftwareCorp.《高质量C/C编程指南》林锐上海贝尔《编程规范和范例》华为公司2源代码书写规范11文件结构41.1版权和版本的声明格式41.2头文件的书写格式52程序的版式72.1空行的使用72.2代码行82.3代码行内的空格8
3、2.4对齐92.5长行拆分102.6修饰符的位置112.7注释113命名规则133.1共性规则133.2WINDOWS程序命名规则144表达式和基本语句174.1运算符的优先级174.2表达式与复合表达式174.3IF语句184.4循环语句的效率204.5FOR语句的循环控制变量204.6SWITCH语句214.7GOTO语句215数据结构225.1基本规则226常量246.1常量的命名规则246.2常量的使用246.3常量定义规则256.4C类中的常量257函数操作设计277.1函数外部特性的注释规则
4、277.2参数的规则287.3返回值的规则297.4函数内部的实现规则307.5其它规范328内存管理3338.1基本原理338.2基本规则349代码可测性359.1基本规则3510编辑、编译、审查3711代码测试3912源代码升级4012.1基本规则4013其它规则和建议4213.1其它规则4213.2其它建议4341文件结构每个C/C程序通常分为两个文件。一个文件用于保存程序的声明declaration称为头文件。另一个文件用于保存程序的实现implementation称为定义definition文
5、件。C/C程序的头文件以“.h”为后缀C程序的定义文件以“.c”为后缀C程序的定义文件通常以“.cpp”为后缀也有一些系统以“.cc”或“.cxx”为后缀。对于DLL文件通常还包括“.def”文件。1.1版权和版本的声明格式1.1.1头文件和C程序文件中都必须包含版权和版本的声明。版权和版本的声明位于头文件和定义文件的开头参见示例1-1主要内容有1版权信息。2文件名称、标识符、摘要。3当前版本号、作者/修改者、完成日期。4版本历史信息。【范例】////Copyright2003杭州三汇公司XX部//Al
6、lrightsreserved.////文件名称filename.h//文件标识见配置管理计划书//摘要简要描述本文件的内容////当前版本1.1//作者输入作者或修改者名字//完成日期2001年7月20日////取代版本1.0//原作者输入原作者或修改者名字//完成日期2001年5月10日//示例版权和版本的声明51.2头文件的书写格式头文件的作用通过头文件来调用库功能。在很多场合源代码不便或不准向用户公布只要向用户提供头文件和二进制的库即可。用户只需要按照头文件中的接口声明来调用库功能而不必关心接口
7、怎么实现的。编译器会从库中提取相应的代码。头文件能加强类型安全检查。如果某个接口被实现或被使用时其方式与头文件中的声明不一致编译器就会指出错误这一简单的规则能大大减轻程序员调试、改错的负担。1.2.1头文件必须包含下列内容1头文件开头处的版权和版本声明。2预处理块。3函数和类结构声明等。1.2.2正确使用预处理块为了防止头文件被重复引用应当用ifndef/define/endif结构产生预处理块。1.2.3正确引用头文件的格式用includeltfilename.hgt格式来引用标准库的头文件编译器将从
8、标准库目录开始搜索用include“filename.h”格式来引用非标准库的头文件编译器将从用户的工作目录开始搜索。1.2.4头文件中只存放“声明”而不存放“定义”1.2.5在C语法中类的成员函数可以在声明的同时被定义并且自动成为内联函数。这虽然会带来书写上的方便但却造成了风格不一致弊大于利。建议将成员函数的定义与声明分开不论该函数体有多么小。1.2.6不提倡使用全局变量尽量不要在头文件中出现象externintvalue这类声明。【范例
此文档下载收益归作者所有