C语言编程规范--------10 代码编辑、编译、审查

(1)打开编译器的所有告警开关对程序进行编译。

(2)在产品软件(项目组)中,要统一编译开关选项。

(3)通过代码走读及审查方式对代码进行检查。代码走读主要是对程序的编程风格如注释、命名等以及编程时易出错的内容进行检查,可由开发人员自己或开发人员交叉的方式进行;代码审查主要是对程序实现的功能及程序的稳定性、安全性、可靠性等进行检查及评审,可通过自审、交叉审核或指定部门抽查等方式进行。

(4)测试部测试产品之前,应对代码进行抽查及评审。

(5)编写代码时要注意随时保存,并定期备份,防止由于断电、硬盘损坏等原因造成代码丢失。

(6)同产品软件(项目组)内,最好使用相同的编辑器,并使用相同的设置选项。同一项目组最好采用相同的智能语言编辑器,如Elipse等,并设计、使用一套缩进宏及注释宏等,将缩进等问题交由编辑器处理。

(7)要小心地使用编辑器提供的块拷贝功能编程。当某段代码与另一段代码的处理功能相似时,许多开发人员都用编辑器提供的块拷贝功能来完成这段代码的编写。由于程序功能相近,故所使用的变量、采用的表达式等在功能及命名上可能都很相近,所以使用块拷贝时要注意,除了修改相应的程序外,一定要把使用的每个变量仔细查看一遍,以改成正确的。不应指望编译器能查出所有这种错误,比如当使用的是全局变量时,就有可能使某种错误隐藏下来。

(8)合理地设计软件系统目录,方便开发人员使用。方便、合理的软件系统目录,可提高工作效率。目录构造的原则是方便有关源程序的存储、查询、编译、链接等工作,同时目录中还应具有工作目录----所有的编译、链接等工作应在此目录中进行,工具目录----有关文件编辑器、文件查找等工具可存放在此目录中。

(9)某些语句经编译后产生告警,但如果你认为它是正确的,那么应通过某种手段去掉告警信息。例如,在Borland C/C++中,可用“#pragma  warn”来关掉或打开某些告警。

示例:

#pragma warn -rvl // 关闭告警

int examples_fun( void )

{

// 程序,但无return语句。

}

#pragma warn +rvl // 打开告警

编译函数examples_fun时本应产生“函数应有返回值”告警,但由于关掉了此告警信息显示,所以编译时将不会产生此告警提示。

使用代码检查工具(如C 语言用PC-Lint )对源程序检查,使用软件工具(如 LogiSCOPE )进行代码审查。

时间: 2024-08-01 11:32:26

C语言编程规范--------10 代码编辑、编译、审查的相关文章

C语言编程规范--------11 代码测试、维护

(1)单元测试要求至少达到语句覆盖. (2)单元测试开始要跟踪每一条语句,并观察数据流及变量的变化. (3)清理.整理或优化后的代码要经过审查及测试. (4)代码版本升级要经过严格测试. (5)使用工具软件对代码版本进行维护. (6)正式版本上软件的任何修改都应有详细的文档记录. (7)发现错误立即修改,并且要记录下来. (8)关键的代码在汇编级跟踪. (9)仔细设计并分析测试用例,使测试用例覆盖尽可能多的情况,以提高测试用例的效率. (10)尽可能模拟出程序的各种出错情况,对出错处理代码进行充

华为C语言编程规范

DKBA华为技术有限公司内部技术规范DKBA 2826-2011.5C语言编程规范2011年5月9日发布 2011年5月9日实施华为技术有限公司Huawei Technologies Co., Ltd.版权所有 侵权必究All rights reserved密级:confidentiality levelDKBA 2826-2011.52011-06-02 华为机密,未经许可不得扩散 Huawei Confidential 第2页,共61页Page 2 , Total61修订声明Revision

C语言编程规范

C语言编程规范 6 函数与过程 6.1 函数的功能与规模设计 函数应当短而精美,而且只做一件事.不要设计多用途面面俱到的函数,多功能集于一身的函数,很可能使函数的理解.测试.维护等变得困难. 6.2 函数的返回值 (1)对于函数的返回位置,尽量保持单一性,即一个函数尽量做到只有一个返回位置.(单入口单出口). 要求大家统一函数的返回值,所有的函数的返回值都将以编码的方式返回. 例如编码定义如下: #define CM_POINT_IS_NULL CMMAKEHR(0X200) : : 参考函数实

Golang语言编程规范

Golang语言编程规范 一.说明 编程规范好,可避免语言陷阱,可有利团队协作,有利项目维护. 正常的Go编程规范有两种:编译器强制的(必须的),gofmt格式化非强制的(非必须). Go宣告支持驼峰命名法,排斥下划线法. 自定义原则: a.统一工作区间,避免目录及文件名随意 b.规范变量/结构体/方法及接口名 c.规范注释 d.单元测试/程序效率等建议 两个等级: (S)建议,(M)必须.以下是细节. 二.代码组织结构 (M)一个目录只包含一个包,模块复杂拆分子模块/子目录 (S)内部项目GO

C语言编程规范试题(标准答案)

一.单选题(每小题3分,共20小题60分) 1.1-1.5    B D A C B                1.6-1.10    C A D B C 1.11-1.15  A D D C B                1.16-1.20   D A B C A 二.填空题(每空1分,共20空20分) 2.1 通常在设计函数的时候,函数之间要低 耦合 ,函数内部要高 内聚 ,函数之间调用关系要 高 扇入. 合理 扇出. 2.2 为了提高代码的效率,通常要求循环体内工作量 最小化 ,把

go语言编程音乐库代码

go语言编程书上有一些代码有误和遗漏的地方,这里就行了修改与加如了一小段代码. ---开始,我也搜个百度,大多都是一样的,而且在remove代码块还是有些问题(不能是传name). 好吧!!不多说了.下面展示所有的代码. ------------------------------------------------------------------------------------------------------ 先贴入口文件. mplayer.go package main impo

C语言编程规范概要

编程规范概要 1. 程序结构清析,简单易懂,单个函数的程序行数不得超过100行. 2. 打算干什么,要简单,直截了当,代码精简,避免垃圾程序. 3. 尽量使用标准库函数和公共函数. 4. 不要随意定义全局变量,尽量使用局部变量. 5. 使用括号以避免二义性. 可读性要求 1.可读性第一,效率第二. 2.保持注释与代码完全一致. 3.每个源程序文件,都有文件头说明,说明规格见规范. 4.每个函数,都有函数头说明,说明规格见规范. 5.主要变量(结构.联合.类或对象)定义或引用时,注释能反映其含义.

Linux内核编程规范与代码风格

source: https://www.kernel.org/doc/html/latest/process/coding-style.html translated by trav, [email protected] 这是一篇阐述Linux内核编程代码风格的文档,译者以学习为目的进行翻译. 1 缩进 Tab的宽度是八个字符,因此缩进的宽度也是八个字符.有些异教徒想让缩进变成四个字符,甚至是两个字符的宽度,这些人和那些把 PI 定义为 3 的人是一个路子的. 注意:缩进的全部意义在于清晰地定义

C语言编程规范试题

[说明]: 1.本试题中不考虑头文件引用问题(假定已经包含正确的头文件),C语言的标准函数都可用: 2.如果不特别说明,假定程序运行环境为:操作系统Windows 2000, VC6.0编译环境,缺省为四字节对齐,X86(80586)CPU处理器(32位小字节序处理器): 3.试卷需要回收再利用,请在答题纸上答题: 4.本试题满分为100分,答题时间为90分钟. 一.单选题(每小题3分,共20小题60分) (  )1.1 程序块要采用缩进风格编写,缩进的空格数为几个? A. 2    B. 4