




已阅读5页,还剩36页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
编码规范 1 第一部分前言 Preface 2 为什么要这么做 书写良好的代码更容易阅读容易阅读的代码才容易被理解容易被理解的代码才健康编程风格体现了程序员对语言的理解水平求职 好的编程风格给别人良好的第一印象 是获得高薪的第一步 3 1 编写目的 通过编程规范的学习和强制执行 使同学们从一开始就接触基本的软件开发思想 了解基本的软件工程规范 养成良好的编程习惯 为后续课程的实践环节和日后实际工作打下良好的基础 也便于教师批改与回复电子作业 执行良好的编码规范可以使编写出来的程序易于阅读 理解和管理 4 2 编码规范的定义 编码 coding 是指用适当的代码编写工具编写C语言程序的源代码编码规范 相关英文说法 codingstandard codingconvention codingcriterion是指被普通采用的 或由某个企业或机构规定的 用计算机语言编写程序的过程中需要遵守的一套规则或约定的集合编码规范并不是语言的语法规则 5 3 编码规范的应用 在软件业高速发展 团队开发成为基本开发模式的今天 几乎每个软件企业或软件开发团队都会制定各种各样的规范 应用于软件开发过程的各个环节中 编码规范是最基础规范之一 不同的公司 对同一种开发语言 一般都采用类似的规范 也就是说编码规范具有一些通用性的标准 6 4 编码规范的学习和执行 要求学习和掌握规范标准要求在本课程的作业过程中执行这些规范 上交的电子作业必须符合这些规范要求要求在后续相关课程中执行此规范中的基本部分 并根据后续课程内容要求执行相应的扩展规范 7 第二部分C语言编码规范 Codingstandards 8 1 文件级模块说明规范 Filemodulespecification 9 文件级模块说明规范的含义 模块定义 指以独立的文件形式存在的模块 主要包括两类C或C 的扩展名为 c或 cpp的源代码文件模块 例如abc cpp exam c扩展名为 h的头文件模块 如abc h exam h对于任何一个用户新建的模块 必须按规范要求给出模块的相关描述信息 10 文件级模块说明的构成 文件级模块说明至少应由以下部分构成1 模块的作者信息2 模块的版权声明3 模块的名称4 模块的摘要描述5 模块的其它说明6 模块的历史信息 11 文件级模块说明的编写 1 每个用户的文件级代码模块必须编写一个说明2 模块说明要求以注释的形式出现在模块的首部3 为了减少每次的工作 每个人应先编写好不变部分 每新建一个模块将不变部分复制到文件首部 再行更改可变部分 12 中文版文件级模块说明规范 作者信息 姓名 学号 班级 学院 Email 电话 版权声明 模块名称 本模块详细名称 不是文件名摘要 摘要地描述本模块的功能其它说明 可有可无 有关本模块的附加说明 这些说明可以在以后帮助代码的阅读者理解这个模块里的内容 如 算法的描述 特殊情况 参考资料等模块历史 谁于某年某月某日创建本模块 创建人email谁于某年某月某日修改本模块 修改人email修改原因 可有可无 根据需要添加 13 例子 作者信息 姓名 张三学号 06123456班级 计科0601班学院 计算机Email zhangsan 电话 51689999版权声明 版权由张三所有 除老师外 未经允许不得拷贝本人作业模块名称 第一个模块摘要 本模块是我的第一个C语言作业 实现了一些简单的功能其它说明 无模块历史 张三于2006年9月20日创建本模块 email zhangsan 张三于2006年9月25日修改本模块 email 同上修改原因 增加了一个输出正方形的函数 注意 红色部分为必填部分 缺填红色部分可能导致作业无法得到批阅 注释开始 注释结束 14 作者信息 姓名 张三学号 06123456班级 计科0601班学院 计算机Email zhangsan 电话 51689999版权声明 版权由张三所有 除老师外 未经允许不得拷贝本人作业模块名称 第一个模块摘要 本模块是我的第一个C语言作业 实现了一些简单的功能其它说明 无模块历史 张三于2006年9月20日创建本模块 email zhangsan 张三于2006年9月25日修改本模块 email 同上修改原因 增加了一个输出正方形的函数 include stdio h include string h main函数说明 main 模块说明示例 example cpp 15 EnglishVersion AuthorInfo Name AuthorID Class School Email Tel Copyright c 2005NJTUModuleName Anunabbreviatednameforthemodule notthefilename Abstract DescriptionofwhatthismoduledoesNotes Optional Additionalnotesaboutthismodule thingsthatmayhelpthereaderofthiscodelateron Examplesare algorithmdescription specialcaseconditions references etc History Createdonmm dd yyyybyemail nameModifiedonmm dd yyyybyemail name Optional historydescription 16 2 函数说明规范 FunctionSpecification 17 关于函数说明 对于作业中程序的任何一个函数 包括main函数 都需要写出函数的说明一个良好的编程习惯 写任何一个函数以前 第一步工作就是先把函数说明写出来 而不是直接先写代码 18 函数说明规范 函数名称 写出函数的名称功能描述 描述出函数具有的功能函数参数 输入输出参数说明 对每个参数都需要作出仔细说明返回值 返回值说明 或者标明无回值模块历史 谁于某年某月某日创建本模块 创建人email谁于某年某月某日修改本模块 修改人email修改原因 可有可无 根据需要添加 19 例子 函数名称 main功能描述 输出Helloworld 函数参数 无返回值 无模块历史 张三于2006年9月20日创建本模块 email zhangsan voidmain printf Helloworld 20 EnglishVersion FunctionName FunctionDescription DescriptionofwhatthefunctiondoesArguments OUT IN OUT argument name descriptionofargument ReturnValue return value descriptionofreturnvalueorNONEHistory Createdonmm dd yyyybyemail name 21 3 代码注释 22 恰到好处的注释 1 对重要变量说明其作用 2 对每一段函数代码加注释说明功能 3 对重要的语句加注释说明其功能 4 对重要的函数调用的参数加实际参数说明 5 在自己认为必要的地方加上注释6 可以采用 和 进行注释 23 4 基本编辑规范要求 正确使用 缩进 空格 空行 24 缩进 根据语句间的层次关系采用缩进格式书写程序 每进一层 往后缩进一层函数内的变量声明与执行语句要缩进一层缩进长函数调用语句pMsg ComReadMsgFromQueue aServer NULL ComWait c lTimeOut 一个缩进层次为四个英文字符宽度一般用Tab键进行缩进 定义Tab为四个英文字符宽度许多开发工具编辑器如VC一般会自动帮你缩进 25 要加空格的场合 1 在逗号后面和语句中间的分号后面加空格 如 inti j k for i 0 iba bi 03 关键字两侧 如if 不要写成if 4 类型与指针说明符之间一定要加空格 char szName 26 不要加空格的场合 1 在结构成员引用符号 和 左右两加不加空格 pStud szName Student nID2 不要在行尾加多余的空格或Tab3 函数名与左括号之间不要加空格 func 4 指针说明符号 与变量名间不要加空格 int pInt 不要写成 int pInt 5 复合运算符中间不能加空格 否则会产生语法错误 如 a ba b都是错误的 27 空行与换行 1 函数的变量说明与执行语句之间加上空行 2 每个函数内的主要功能块之间加空行表示区隔 3 一行语句不要写的太长 将长语句分成多行写 4 不要在一行中写多条语句 28 例子 intmain inti j nSum 0 变量说明for i 0 i 10 i 执行代码 for j 0 j 10 j nSum i 注意空格 空行 注意各层缩进 29 5 标识符命名 NamingIndentifiers 30 标识符命名基本要求 1 这里所指的标识符包括符号常量 变量 函数名 类型名 成员名 C 中的类名等需要编程者命名的各种文字符号2 标识符命名必须符合语法规则3 任何标识符的命名最好能有一定的含义4 标识符的命名尽量采用英文 31 5 1符号常量命名规范 符号常量的命名用大写字母表示如 defineLENGTH10如果符号常量由多个单词构成 两个不同的单词之间可以用下划线连接如 defineMAX LEN50 32 5 2变量命名普通规范 1 变量名一般需要反映变量的用途如 intsum 2 如果变量名由多个单词构成 每个单词的首字符要大写如 intTotalFiles 33 5 3变量命名与变量类型 在实际软件开发中 常见的规范强制要求能从变量名中看出变量的类型 因此 建议同学们一开始就养成这样的习惯 使变量能反映类型的方法是在变量的前面加上各种前缀 由这些前缀反映变量的类型对类型前缀规范 各种不同的软件开发环境可能会有不同规范 不同的软件企业或开发团队 也可能会有不同的规范 没有绝对的标准 但是这些规范都大同小异 34 5 4C常见变量前缀建议规范 35 5 5关于C 命名规范 在各种C 中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 第六章 几何图形初步提能集训(含答案)2025-2026学年数学人教版(2024)七年级上册
- 1.3.3 植物体的结构层次练习题(含答案)人教版(2024)生物学七年级上册
- 用电安全知识培训课件效果
- 《ABB工业机器人虚拟仿真技术》(1+X) 课件 任务5.2 动态输送链参数设置
- 生物制药安全知识培训总结课件
- 急性间歇性卟啉病腹痛护理查房
- 2025年英语四六级考试翻译真题解析模拟试卷
- 2025年秋季初级经济师职业资格考试 经济基础知识核心考点深度解析
- 2025至2030中国医疗保健期间行业产业运行态势及投资规划深度研究报告
- 酒体设计考试题库及答案
- 人教版小学数学2年级下册课时练无答案+单元测试题+期中期末检测卷(含答案)
- 西南大学2022-2023学年本科教学质量报告
- 督灸技术课件
- 护理查房及病例讨论
- 提升教师专业素养与综合能力的培训
- 人力资源顾问服务合同范本正规范本(通用版)
- 电土施表1-6 专业绿色施工、节能减排管理措施和实施记录
- 幼儿园多媒体课件设计与制作第2版(高职学前教育专业)全套教学课件
- 单位消防安全管理应知应会参考题库300题(含答案)
- 读书分享读书交流会《中国民间故事》
- ISO45001职业健康安全管理体系课件
评论
0/150
提交评论