下载此文档

C语言编码规范.doc


文档分类:IT计算机 | 页数:约38页 举报非法文档有奖
1/38
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/38 下载此文档
文档列表 文档介绍
C语言编程规范
对于程序员来说,能工作代码并不等于“好”代码。“好”代码指标诸多,涉及易读、易维护、易移植和可靠等。其中,可靠性对嵌入式系统非常重要,特别是在那些对安全性规定很高系统中,如飞行器、汽车和工业控制中。这些系统特点是:只要工作稍有偏差,就有也许导致重大损失或者人员伤亡。一种不容易出错系统,除了要有较好硬件设计(如电磁兼容性),还要有很健壮或者说“安全”程序。
然而,很少有程序员懂得什么样程序是安全程序。诸多程序只是表面上可以干活,还存在着大量隐患。固然,这其中也有C语言自身因素。由于C语言是一门难以掌握语言,其灵活编程方式和语法规则对于一种新手来说很也许会成为机关重重陷阱。同步,C语言定义还并不完全,虽然是国际通用C语言原则,也还存在着诸多未完全定义地方。规定所有嵌入式程序员都成为C语言专家,避开所有也许带来危险编程方式,是不现实。最佳办法是有一种针对安全性C语言编程规范,告诉程序员该如何做。
本规范在制定过程中,重要参照了业界比较推崇《华为软件编程规范和范例》和《MISRA 规则》,适合C语言初学者使用,目在于在教学中培养学生良好编程规范和意识、素质,增进所设计程序安全、健壮、可靠、可读与可维护(程序简朴、清晰)。考虑到面向是初学者,为便于教学和课程考核操作,本规范中规定比较基本。事实上,诸多公司均有自己规定代码风格,涉及命名规则、缩进规则等,学生参加工作后,应再进一步学习和应用公司规范。
建议学生在学习本规范同步,花点时间阅读本规范参照文献原文,特别是熟读本规范参照文献之一《“安全第一”C语言编程规范》,深刻理解编程规范与程序安全、健壮、可靠、可读、可维护间关系和作用,在学习和工作中养成良好编程风格。
1 排版
严格采用阶梯层次组织程序代码
函数或过程开始、构造定义及循环、判断等语句中代码都要采用缩进风格,case 语句下状况解决语句也要遵从语句缩进规定。
程序块分界符(如C/C++ 语言大括号‘{’ 和‘}’)应各独占一行并且位于同一列,同步与引用它们语句左对齐。在函数体开始、类定义、构造定义、枚举定义以及if 、for 、do 、while 、switch 、case 语句中程序都要采用如上缩进方式。
各层次缩进风格采用TAB缩进(TAB宽度原则上使用系统默认值,TC使用8空格宽度,VC使用4空格宽度)。示例:
if (x is true)
{
we do y
}
else
{
if (a > b)
{
...
}
else
{
...
}
}
和:
if (x == y)
{
...
}
else if (x > y)
{
...
}
else
{
....
}
注意,右括号所在行不应当有其他东西,除非跟随着一种条件判断。也就是do-while语句中“while”,象这样:
do
{
body of do-loop
} while (condition);
阐明:代码离不开缩进,缩进背后思想是:清晰地定义一种控制块从哪里开始,到哪里结束。特别是在你持续不断盯了20个小时屏幕后,如果你有大尺寸缩进。你将更容易发现缩进好处。
关于缩进重要有两个争论,一种是该用空格(Space)还是用制表符(Tab),此外一种是该用4格缩进还是8格缩进甚至都不是。建议总是使用Tab缩进,由于几乎所有代码(不但仅是C代码)都在使用Tab缩进。
当前,有人说8个字符大小缩进导致代码太偏右了,并且在一种80字符宽终端屏幕上看着很不舒服。对这个问题回答是:如果你有超过3个级别缩进,你就有点犯糊涂了,应当修改你程序。简而言之,8个字符缩进使程序更易读,并且当你把功能隐藏太深时,多层次缩进还会对此很直观给出警告。要留意这种警告信息。
例外:对于由开发工具自动生成代码可以有不一致。
及时折行
较长语句(>80 字符)要提成多行书写,长表达式要在低优先级操作符处划分新行,操作符放在新行之首,划分出新行要进行恰当缩进(至少1个TAB位置),使排版整洁,语句可读。示例:
report_or_not_flag = ((taskno < MAX_ACT_TASK_NUMBER)
&& (n7stat_stat_item_valid (stat_item))
&& (act_task_table[taskno].result_data != 0));
循环、判断等语句中若有较长表达式或语句,则要进行适应划分,长表达式要在低优先级操作符处划分新行,操作符放在新行之首。示例:
if ((taskno < max_act_task_number)
&& (n7stat_stat_

C语言编码规范 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数38
  • 收藏数0 收藏
  • 顶次数0
  • 上传人读书之乐
  • 文件大小73 KB
  • 时间2021-12-04