C_C++软件开发规范.doc
文本预览下载声明
软件编程规范
目录
软件编程规范 1
目录 1
§2 开发环境、工具集合 1
§3 C语言软件编码规范 2
§3.1. 排版 2
§3.2. 注释 6
§3.3. 标识符命名 11
§3.4. 可读性 12
§3.5. 变量、结构 13
§3.6. 函数、过程 14
§3.7. 可测性 15
§3.8. 程序效率 17
§3.9. 质量保证 19
§3.10. 宏 23
§3.11. 杂项 24
§4 C++语言软件编码规范 41
§4.1. 变量命名规则 41
软件开发工具集合
开发工具列表:
软件名称 版本 主要功能 附属 Microsoft Windows Server 2008 R2 x64
XP SP3
7 工作平台 Microsoft Visual Studio 2008(9.0)中文版 C/C++ 代码查看、编辑和编译 Microsoft SQL Server 2008中文版/英文版
2005中文版/英文版 SMS、CAS、广告等业务系统的关系数据库平台
(所有新项目统一使用2008) CentOS(RHEL) 6.0 多语言版 嵌入式Linux交叉编译开发环境
基于开源软件的系统工作平台 i686-linux-chain
arm-linux-chain
ppc-linux-chain UltraEdit-32/WinHEX 10.10 中文版 16进制文件查看编辑 VMware Workstation 8.0 英文版 多重操作系统工作环境搭建 CentOS(RHEL)6.0
Windows 2000
Windows XP SP3 x86
Windows 7 x86 x64
Windows Server 2003 x86 x64
Windows Server 2008 x86 x64
Windows Server 2008 R2 x64 Microsoft Office 2007 文档编写 EmEditor 10.0中文版 简单文本文件、脚本文件查看、编辑(Makefile,shell) Beyond Compare 3.11 源代码文件比较 SecureCRT 5.2 串口、Telnet、SSH等终端调试 Ethereal 10.11 以太网协议捕获分析 Photoshop CS9 中文版 简单图片编辑 Adobe Reader 9.0 开发文档阅读 注意:
嵌入式C/C++ 语言编辑、编译调试工具统一为VS2008 + VA;具体编译调试工具视平台变化。
嵌入式WEB开发中HTML、JAVASCRIPT编辑工具统一为VS2008 ;调试工具为IE8并注意兼容IE6和IE7以及Firefox 9.0。
嵌入式CGI,采用CGIC LIB库。
嵌入式XML,采用MXML库
WindowXML,采用微软XML Lite库
运行嵌入式Linux Tool Chain环境统一为虚拟机内运行的CentOS(RHEL)5.0。
上位机Linux开发环境统一为物理机内运行的CentOS(RHEL)6.0。
软件开发环境规约工作目录结构的规定:project name(项目名称) ——bin 执行文件 ——log 日志文件 ——lib 库文件 ——src 源程序
——dat 数据文件程中不起作用的文件或类应删除,工程目录下的非工程文件也应该移走,保持工程的清洁,避免混淆难于管理在VC环境下,建议将常用的头文件全部放入stdafx.h中,而在每个cpp开始处嵌入stdafx.h。避免头文件的交叉引用,如果有严重的交叉引用,适当使用类的声明。将独立性比较强的模块抽出来,做成DLL,控件或COM组件,该模块可单独编写和测试,也增强了其可重用性。一个比较大的工程应留有一定的消息接口或插件接口等。工程的版本控制要严格,版本格式为xx.xx,必要时使用Build次数或日期。高版本尽量兼容低版本的用法、数据或协议。工程的编译宏定义和工程参数设置应正确,每作一个新工程时应检查工程参数是否正确。建议字节对齐方式为1字节对齐。4个
对于由开发工具自动生成的代码可以有不一致。
相对独立的程序块之间、变量说明之后必须加空行
示例:如下例子不符合规范。
if (!valid_ni(ni))
{
... // program code
}
repssn_ind = ssn_data[index].repssn_index;
repssn_ni = ssn_data[index].ni;
应如下书写:
if (!valid_ni(ni))
{
... // program code
}
reps
显示全部