1 / 17
文档名称:

CC语言编程规范.doc

格式:doc   大小:176KB   页数:17页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

CC语言编程规范.doc

上传人:zxwziyou9 2018/8/16 文件大小:176 KB

下载得到文件列表

CC语言编程规范.doc

相关文档

文档介绍

文档介绍:XXXXXX
武汉烽火众智数字技术有限责任公司
C/C++编程规范
文件编号:
项目编号:
信息级别:
绝密机密内部文件
部门:
拟制:
年月日
校对:
年月日
审核:
年月日
批准:
年月日
文档修订历史记录
日期
版本
说明
修改者


编码规范初稿
方宏伟


在《编码规范初稿》的基础上,根据项目组的讨论,进行了修改。
方宏伟



刘尚军


添加可测性要求、程序效率要求和质量保证要求
刘尚军


增加变量必须初始化规则4-6,修改部分编号错误
吴长树
目录
文档修订历史记录 1
目录 2
1总的原则 3
2文件命名及书写规范 4
3 数据类型规范 4
4 变量规范 6
5 宏定义规范 7
6 表达式规范 8
7 函数规范 9
8 注释编写规范 9
9 可测性要求 12
10 程序效率要求 12
11 质量保证要求 14
1总的原则

编写本规范的目的是统一虹信公司网络技术事业部嵌入式软件的编程风格,提高软件源程序的可读性、可移植性和可维护性,减少软件维护成本,并作为代码走读的考核标准。
定义
下列定义适用于本规范。
【规则】:编程时必须遵守的约定。
【建议】:编程时必须考虑的约定。
【说明】:对此规则或建议的必要的解释。
【正例】:符合规范或建议的例子。
【反例】:不符合规范或建议的例子。
2文件命名及书写规范
【规则2-1】,,C++。
【规则2-2】文件名采用模块加说明的方式命名,不采用“_”、“-”等分隔符,与C、C++文件对应的头文件的文件名保持一致。
正例:


【规则2-3】.c文件中,组织顺序按照文件注释、公用头文件、自用头文件、宏、结构联合(放在头文件中)、变量、函数原型、函数实现的顺序进行。.c文件中,函数先主函数,再子函数。
【规则2-4】.h文件的组织顺序:
文件注释
#ifndef 文件名_H
#define 文件名_H
include文件引用
宏定义
常量定义
类型定义
函数原型定义
#endif
3 数据类型规范
基本数据类型规范
表1 基本类型及前缀规范
类型名定义
该类型变量的前缀
类型意义
s8
s8
有符号的8bit整数
u8
u8
无符号的8bit整数
s16
s16
有符号的16bit整数
u16
u16
无符号的16bit整数
s32
s32
有符号的32bit整数
u32
u32
无符号的32bit整数
s64
s64
有符号的64bit整数
u64
u64
无符号的64bit整数
void
v
void类型
f32
f32
32位浮点数
f64
f64
64位浮点数
FILE*
pf
文件指针
表2 变量属性公共前缀规则
前缀
前缀意义
a
数组类型变量
p
指针类型变量
t
自定义类型变量(自定义类型包括结构、联合、枚举型)
ap
存放指针的数组
at
存放自定义类型变量的数组
pa
指向数组的指针
pp
指向指针的指针变量(两维指针)
pt
指向自定义类型的指针变量
结构、联合、枚举规范
【规则3-1】结构,联合,枚举类型定义统一使用typedef struct {…}TStructTypeName的形式,即结构名采用大小写结合的方法,在开头加上T,表明是类型定义。
正例:
typedef struct TagLapdErrorMsg{
u8 u8ErrorNo;
s8 s8ErrorMsg[ MAX_LAPD_ERROR_MSG_LEN ];
} TLapdErrorMsg;
反例:
typedef stuct tag_lapd_error_msg{
BYTE ErrorNo;
CHAR ErrorMsg[ MAX_LAPD_ERROR_MSG_LEN ]
}LapdErrorMsg;
typedef stuct tagLAPDERRORMSG{
BYTE ErrorNo;
CHAR ErrorMsg[ MAX_LAPD_ERROR_MSG_LEN ]
}LAPDERRORMSG;
【规则3-2】结构、联合、枚