作业标准
S04006
总页数
8
正文
4
附件
4
文件控制部门
项目理部
编码标准
批准
刘岩
审核
崔戈
拟制
刘慧丰
批准日期
1999.5.12
生效日期
1999.5.12
关
联
文
件
沈阳东东系统集成限公司
更改记录
序号
发行日
更改象·更改容
批准
审查
拟制
0
1999.5.12
新发行
刘岩
崔戈
刘慧丰
目 录
1 目 24
2 编码注意事项 24
3 编码风格 24
4 序言性注释格式 34
附录
头注释样例 14(附)
1目
编码程序设计时做成程序规范书流程等逻辑设计书基础编码时减少编码水差异利进入单体试验阶段便进行调试提高维护效率特制定标准
标准作代码书写标准目统程序设计记述风格培养良编码惯代码记述清晰明确具良读性良编码惯帮助程序员避开必语法语义错误出现错误迅速定位外良编码惯助编码程中程序设计思路进行验证提示
规范作编码通常标准希通规范进行编码提高程序读性修改性维护效率果程序户指定记述标准(半)动生成工具时适遵循标准
2编码注意事项
(1)认真分析理解系统设计书程序设计书(时包括流程图)理解述文件基础编码 (特程序设计书编码担者时)明确处意判断应确认进行
(2)注意编制容易理解(易读)程序放第位头脑中常考虑程序读者读者说明方式写窍门读起容易理解程序般质量较修改维护容易
(3)编码程中发现设计问题时追溯系统设计书/程序设计书轻易判断应设计者确认
(4)关数库记录规范等包含文件模块头宏等采系统统规定意制作否会修改改造造成困难
(5)编码结束编码重查未充分重查便进入步测试阶段编码重查作简便障检查手段非常效手段时检查出试验工程中全部检查出复杂错误
3编码风格
编码目标首先清晰正确次程序效率编程时应遵守规
(1)合理goto语句合理goto语句提高代码运行效率goto语句会破坏程序结构特性限制范围
(2)括号体现优先级嵌套层次括号体现优先级嵌套层次程序更清晰够效避免二义性
(3)利标准书写格式提高程序读性
a. 分层缩进显示嵌套结构层次
b. 行写条语句
c. 注释段周围加边框
d. 注释段程序段程序段间插入空行
(4)命名规命名应实际意义般格式:前缀+形容词名词动词组成词组前缀语言决定
(5)适注释适注释提高程序读性注释提高程序读性会降低效率注释定适注释分序言性注释功性注释两种文件头模块头函数程头部注释属序言性注释包括部分容:
a. 功描述执行功进行简略介绍
b. 接口描述简述输入参数返回值
c. 数描述简述重变量结构文件等
d. 履历描述包括设计者日期版文件头包括版权声名
功性注释嵌源程序部描述处理功
(6)输入数检查输入数应检查
(7)变量前赋初值
(8)错误处理定出现错误进行处理避免障引起停机
4序言性注释格式(头注释)
头注释致分文件注释模块注释数注释等写注释时推荐格式
(1) 文件注释(文件头)文件注释记述信息
(a)文件识信息
¯ 系统名(模块时)
程序名模块名
版信息(包括时间)
¯ 属(属模块时)
担
著作权声明
(b)文件说明信息
简介
¯ 功说明(模块说明)
¯ 操作环境
HWPLATFORMOSMEMORY等
¯ 编译连接信息
make file名命令程文件名编译连接选项(Option)应连接装配模块文件名子程序库名等
(c) 文件维护信息
版日期作者属部门名作者姓名补充说明等
创建信息
¯ 更改记录
(d)
¯ 系统说明(模块时)
¯ 注意事项
¯ 文件理工具附加信息
需特说明信息
¯ SYSTEM
PROGRAMMODULE
VERSION
¯ MASTER MODULE
AUTHOR
COPYRIGHT
ABSTRACTPURPOSE
¯ FUNCTION
¯ ENVIRONMENT
¯ MAKE OPTION
CREATE
¯ UPDATE
¯ USAGE
¯ NOTE
¯ SPECIAL INFO
说明:表示标准项目¯表示选项目
(2) 模块注释(模块头)模块注释解模块概非常效维护时样效定记述模块注释记述信息
模块名
¯ 模块编号
¯ 版信息
简介
¯ 功说明
¯ 影响
¯ 注意事项
¯ 返回值
¯ 参数说明
¯ 担
¯ 创建信息
¯ 更改记录
MODULE
¯ ID
¯ VERSION
ABSTRACT
¯ FUNCTION
¯ SIDEEFFECT
¯ NOTE
¯ RETURN
¯ ARGUMENT
¯ AUTHOR
¯ CREATE
¯ UPDATE
说明:表示标准项目¯表示选项目
(3) 数注释
数注释帮助数结构数表数组等容理解
标识符名(标识符定义)
数结构名称
数类型
简介
¯ 注意事项
TAG
DATA
DATATYPE
ABSTRACT
¯ NOTE
说明:表示标准项目¯表示选项目
附录 头注释样例
C语言源文件注释样例
1 模块文件头(程序模块生成命令程序)
***************************************************************
* *
* 系统: 系统名 *
* 户: 户名 *
* 程序: 程序名 标题 *
* 担部门: XXXX *
* YYYY *
* (C)Copyright Shenyang NETS integration Corporation 1996 *
* All Rights Reserved *
***************************************************************
* VERSION DATE BY CHANGECOMMENT *
* VX00 YYMMDD 姓名 Create *
* VXXX YYMMDD 姓名 更改 概更改理 *
***************************************************************
* 功概略:功概略 *
* 异常处理:异常处理 *
* 调方法: *
* 程序名 Arg1 Arg2 *
* 参数说明: *
* I0 参数名 容 *
* I Arg1 容说明 *
* I Arg2 容说明 *
* 适计算机:计算机类型型号 *
* OS: OS名称(版) *
* : 存 MB *
* 交换 MB *
* 编译: 编译系统名称(版) *
* 连接信息: 连接信息 *
***************************************************************
* *
* 请注意:未许擅转载容部分全部 *
* *
***************************************************************
2 模块文件头(属模块)
***************************************************************
* *
* 系统: 系统名 *
* 户: 户名 *
* 模块: 模块名 标题 *
* 属: 模块名程序名 *
* 担部门: XXXX *
* YYYY *
* (C)Copyright Shenyang NETS Integration Corporation 1996 *
* All Rights Reserved *
***************************************************************
* VERSION DATE BY CHANGECOMMENT *
* VX00 YYMMDD 姓名 Create *
* VXXX YYMMDD 姓名 更改概更改理 *
***************************************************************
* 功概略:功概略 *
* 异常处理:异常处理 *
* 调序: *
* int I1 *
* *
* char 01 *
* sts (&I1&01) *
* 参数说明: *
* I0 变量名 容 *
* I I1 容说明 *
* *
* I 01 容说明 *
* 0 STS 容说明 *
* 适计算机:计算机类型型号 *
* OS: OS名称(版) *
* 编译: 编译系统(版) *
* 连接信息: 连接信息 *
***************************************************************
* 请注意:未许擅转载容部分全部 *
***************************************************************
3 文件头例
*
* Copyright 19941995 Microsoft Corporation All Rights Reserved
* PROGRAM winprogc
*
* PURPOSE Windows program
*
* PLATFORMS Windows 95
*
* FUNCTIONS
* WinMain() calls initialization function processes message loop
* InitApplication() Initializes window data nd registers window
* InitInstance() saves instance handle and creates main window
* MainWindProc() Processes messages
* About() Process menssages for About dialog box
*
4 模块头1
*
* MODULE main
* VERSION 11
* ABSTRACT main function of program
* FUNCTION function of main
* ARGUMENT
* argc count of command line argument
* argv[] command line argument
* RETURN
* 0 normal end
* 1 abnormal end
* SIDEEFFECT
* NOTE
* CREATE 9607 Nets1
* UPDATE 9608 Nets2
* the reason
* UPDATE 9609 Nets3
*
5 模块头2
***************************************************************
* *
* 模块: 模块名 标题 *
* 功概略: 功概略 *
* *
***************************************************************
6 类型声明
*
* TAG DemoStruct
* ABSTRACT Demo Information Storage Structure
* NOTE The struct is only used as a demonstration
*
7 数定义
*
* DATA DemoData
* DATATYPE DemoSruct
* ABSTRACT Demo Information Storage
* NOTE The data is only used as a demonstration
*
文档香网(httpswwwxiangdangnet)户传
《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
该内容是文档的文本内容,更好的格式请下载文档