ImageVerifierCode 换一换
格式:DOC , 页数:24 ,大小:214.50KB ,
资源ID:2159980      下载积分:150 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-2159980.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(华为软件编程规范.doc)为本站会员(11****ws)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

华为软件编程规范.doc

1、Comment liao1: Page: 1密级可以选择以下几种: 无, 一般,内部,组内,秘密,绝密等。文 档 编 号 产品版本 受控状态DC-SB-2003-1005 V 1.0 内部产品名称: 软件编程规范 共 页软件编程规范(仅供内部使用)北京世纪百合科技有限公司Beijing Centurial Lily Technology Co.,Ltd.版权所有 不得复制北京世纪百合技术有限公司 软件编程规范 第 2 页 共 24 页文档修改记录版本号 日期 所改页 注 记 提交人 批准人北京世纪百合技术有限公司 软件编程规范 第 3 页 共 24 页目 录1. 引言 .41.1 目的 .41

2、.2 范围 .42. 规范 .42.1 文件 .42.2 版面风格 .42.3 标识符命名 .82.4 函数与宏 .102.5 代码的可靠性 .143. 附录:通用类型的公共定义 .19北京世纪百合技术有限公司 软件编程规范 第 4 页 共 24 页1. 引言1.1 目的本规范的目的在于增加源代码的可读性,减少程序员对代码理解上的偏差,使程序员能够编写出可靠的代码,降低代码维护成本。1.2 范围本规范内容涉及范围包括:文件、版面、注释、标识符、变量和结构、函数、宏以及可理解性等。本规范适用于公司开发的所有软件产品。在新软件的编码过程中本规范必须执行。2. 规范2.1 文件2.1.1 头文件的名

3、称一律为小写,格式为“子系统名_文件名.h”。例如:ipf_protocol.h 等。2.1.2 头文件的格式如下: 注释头,格式参见软件编程规范; 头文件预编译开关开始,格式为:#ifndef 预编译开关#define 预编译开关其中预编译开关格式为:“ _文件名_H”,其中文件名一律大写 头文件内容; 头文件预编译开关结束,格式为:#endif用来和头文件预编译开关的开始对应。例如:以下为 ipf_ip.h 头文件的内容:/*Copyright (c) Lily Of The Century Technology Co., LTD.ALL RIGHTS RESERVEDDescriptio

4、n: / 用于详细说明此程序文件完成的主要功能*/#ifndef _IPF_IP_H#define _IPF_IP_H.北京世纪百合技术有限公司 软件编程规范 第 5 页 共 24 页.#endif2.1.3 头文件的定义要有层次,禁止交叉引用。说明:头文件的层次设置为公共模块、私有模块。头文件的引用次序为下层头文件引用上层头文件、私有头文件引用公共头文件,声明结构时尤其要注意,不允许出现交叉引用的情况。示例:如下定义不符合规范头文件 isdn_a.h/*Copyright (c) Lily Of The Century Technology Co., LTD.ALL RIGHTS RESER

5、VEDDescription: 定义配置数据结构*/#ifndef _ISDN_A_H#define _ISDN_A_H#include “isdn_b.h”typedef struct.;ISDN_CONTROL stIsdnControl;.;ISDN_ CONFIG;#endif头文件 isdn_b.h/*Copyright (c) Lily Of The Century Technology Co., LTD.北京世纪百合技术有限公司 软件编程规范 第 2 页 共 24 页ALL RIGHTS RESERVEDDescription: 定义控制数据结构*/#ifndef _ISDN_B

6、_H#define _ISDN_B_H#include “isdn_a.h”typedef struct.;ISDN_CONFIG stIsdnConfig;.;ISDN_CONTROL;#endif为了解决上述矛盾,可以将两个结构合并到一个文件中声明。2.1.4 文件中如果引用系统头文件,必须使用“ “;如果引用自定义的头文件,必须使用“”“和“”“。说明:系统头文件是指由编译系统提供的头文件。示例:如下书写不符合规范。#include “stdlib.h”#include 应该改作:#include #include “isdn_config.h”2.1.5 头文件中只能声明变量类型,禁止

7、定义变量。说明:如果在头文件中定义变量,当有多个源文件引用该头文件时,会出现重复定义的错误。示例:如下头文件是不规范的。头文件 isdn_a.h/*Copyright (c) Lily Of The Century Technology Co., LTD.北京世纪百合技术有限公司 软件编程规范 第 3 页 共 24 页ALL RIGHTS RESERVEDDescription: 定义配置数据结构*/#ifndef _ISDN_A_H#define _ISDN_A_Htypedef struct.;ISDN_ CONFIG;ISDN_CONFIG g_stIsdnConfig;#endif结构

8、变量 g_stIsdnConfig 不能在头文件中定义,只能在源文件中定义。可以在相应的源文件定义后,头文件作如下改动:ISDN_CONFIG g_stIsdnConfig;改为extern ISDN_CONFIG g_stIsdnConfig;2.1.6 头文件的声明顺序,应该有层次感。说明:头文件的声明顺序一般是宏、结构、函数、变量。函数在头文件中声明时开头可以不加“extern”2.1.7 源文件名称一律小写,格式为:子系统名_文件名.c,示例:ipf_ pkt.c 表示在 IPF 子系统的包处理文件。2.1.8 源文件必须加注释头。源文件注释头格式为:/*Copyright (c) L

9、ily Of The Century Technology Co.,LTD.ALL RIGHTS RESERVEDDescription: / 用于详细说明此程序文件完成的主要功能*/北京世纪百合技术有限公司 软件编程规范 第 4 页 共 24 页2.2 版面风格2.2.1 程序块采用缩进风格编写,缩进使用 TAB 符号,TAB 符号规定为 4 个空格。变量说明之后必须加空行。说明:由开发工具自动生成的代码例外。示例:如下例子不符合规范。void isdn_InitConfig(void)WORD wConfigNumner;.; /program code应如下书写void isdn_Ini

10、tConfig(void)WORD wConfigNumner;.; /program code2.2.2 不允许把多个短语句写在一行中,一行只写一条语句。示例:如下例子不符合规范。wLength = wWidth = 0;或 wLength = 0, wWidth = 0;应如下书写wLength = 0;wWidth = 0;禁止如下写法:int i = j = 0;或 int i = 0,j = 0;应该写作:int i = 0;int j = 0;或int i,j;i = 0;j = 0;2.2.3 do、while 、switch 、case、default、if、else、for

11、等语句自占一行,且if、else 语句在同一列。 示例 1:如下例子不符合规范。do .; /program code北京世纪百合技术有限公司 软件编程规范 第 5 页 共 24 页 while (pstUser != NULL);应如下书写:do.; /program code while (pstUser != NULL);示例 2:如下例子不符合规范。while (pstUser != NULL) .; /program code应如下书写:while (pstUser != NULL).; /program code示例 3:如下例子不符合规范。switch (dwCounter) c

12、ase 1: dwCounter+;.; /program codebreak;default:break;应如下书写:switch (dwCounter)case 1:dwCounter+;.; /program codebreak;default:break;示例 4:如下例子不符合规范。if (pstUser = NULL) return;else .; /program code应如下书写:if (pstUser = NULL)return;else.; /program code北京世纪百合技术有限公司 软件编程规范 第 6 页 共 24 页示例 5:如下例子不符合规范。for (i

13、 = 0;i 10;i+) .; /program code应如下书写:for (i = 0;i 10;i+).; /program code2.2.4 函数的开始、结构的定义及循环、判断等语句中的代码都要采用缩进风格。示例:如下例子不符合规范。int isdn_Config(void) .; / program codereturn 0;应该改为int isdn_Config(void) .; / program codereturn 0;示例:如下例子不符合规范。typedef structWORD wSlot;WORD wPort;ISDN_CONFIG;应该改为typedef structWORD wSlot;WORD wPort;ISDN_CONFIG;2.2.5 在 switch 的处理程序块中,case 和 default 语句下的处理语句也要遵从语句缩进要求。示例:以下写法是不规范的switch (wEvent)

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。