ISOS编程规范说明书.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 PAGE 22 页,共 NUMPAGES 22 页 ISOS编程规范说明书 目录 1 引言 1 1.1 编写目的 1 2 概述 1 2.1 目标 1 2.2 适用范围 1 2.3 需求 1 2.4 局限 1 3 编程规范总原则 2 4 标识符 2 4.1 变量名 2 4.1.1 不同作用域变量的命名 2 4.1.2 变量类型的重定义 2 4.1.3 不同类型变量的命名(匈牙利命名法) 3 4.1.4 指针变量的命名 5 4.1.5 函数指针变量的命名 5 4.1.6 在某一模块中定义的全局变量,变量名的开始需有模块名? 6 4.2 函数名 6 4.3 数据结构 6 5 排版 7 5.1 用缩进格式书写代码 7 5.2 长语句 7 5.3 空行和空格的使用 8 6 表达式与基本语句 9 6.1 运算表达式 9 6.2 if 语句 10 6.2.1 布尔变量与零值比较 10 6.2.2 整型变量与零值比较 10 6.2.3 浮点变量与零值比较 11 6.2.4 对if 语句的补充说明 11 6.3 Switch语句 11 7 常量 12 7.1 为什么要用常量 12 7.2 定义常量的方法 13 7.2.1 #define 宏定义 13 7.2.2 const 常量 13 7.2.3 枚举 13 7.3 函数返回值常量定义 14 7.4 特性开关宏定义 14 8 注释 14 8.1 注释的基本概念 14 8.2 注释的准确性 15 8.3 变量?常量的注释 16 8.4 函数的注释 17 8.5 修改注释 18 8.6 /* */ ?/**以及/** 18 9 文件布局 19 9.1 C以及h文件头要求 19 9.2 C源代码文件布局要求 21 9.3 H头文件要求 24 9.4 H头文件布局 24 9.5 ip_pub.h 26 9.6 ip_def.h 27 9.7 ip_ext.h 27 9.8 ip_fun.h 27 9.9 各个H头文件关系 27 引言 编写目的 作为一个大型的项目,每个工程师的编程习惯都不相同,所以对编程风格?规范进行统一就显得十分必要? 概述 目标 本文档为统一ISOS平台的编程规范而写作? 适用范围 本文档虽然为ISOS平台制作,但可以推广到其他项目组? 需求 ? 程序最重要的是正确性,其次是可维护性,最后才是效率; ? 学习如何写优美的程序与学习如何正确地编写代码同样重要; ? 让程序尽量简单易懂,即使违背了某些规则也无关紧要; ? 一个运行正常但没有注释的程序如同一个等待爆炸的定时炸弹,因为早晚会有人修改或升级这个程序; ? 好风格应该成为一种习惯?如果你在开始写代码时就关心风格问题,如果你花时间去审视和改进它,你将会逐渐养成一种好的编程习惯?一旦这种习惯变成自动的东西,你的潜意识就会帮你照料许多细节问题,甚至你在工作压力下写出的代码也会更好? 局限 此文档完成时间比较仓促,需要在后续实践中逐步完善? 编程规范总原则 ? 本规范具有强制性,一旦制定,必须按照规范执行 ? 规范在未经批准修改之前,必须按照现行规范执行 标识符 标识符的命名要清晰?明了,有明确含义?使用完整的单词或大家基本可以理解的缩写,避免使人产生误解? 标识符应当采用英文单词或其组合,切忌使用汉语拼音来命名? 变量名 不同作用域变量的命名 ? 局部变量尽量包含较多的信息; ? 全局变量以首字母以g_开始命名; ? 定义类型和宏定义常数以大写字母命名; ? 变量的作用域越大,它的名字所带有的信息就应该越多? 局部变量: ULONG ulStudentAge; 全局变量: ULONG g_ulSudentAge; 宏定义常数: #define STUDENT_NUM 10 类型定义: typedef INT16S int; 变量类型的重定义 由于变量类型比较多,为了整个项目的统一,对一些常用的变量类型进行重新定义: typedef char CHAR ; //有符号的单字节变量类型 typedef unsigned char UCHAR; //无符号的单字节变量类型 typedef short int SHORT; //有符号的双字节变量类型 typedef unsigned short int USHORT; //无符号的双字节变量类型 typedef long LONG; //有符号的四字节变量类型 typedef unsigned long ULONG ; //无符号的四字节变量类型 typedef long long LLONG ; //有符号的八字节变量类型 typedef unsigned long long ULLONG; //无符

文档评论(0)

benzei244572 + 关注
实名认证
内容提供者

建筑工程师持证人

没啥好说的额

领域认证该用户于2024年10月16日上传了建筑工程师

1亿VIP精品文档

相关文档