- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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; //无符
您可能关注的文档
- 办公楼工程技术规范.docx
- 办公楼物业管理服务规范.docx
- 餐饮部管理规范.docx
- 餐饮服务食品安全操作规范.docx
- 电动自行车零部件检验规范.docx
- 电子病历系统功能规范.docx
- 反渗透保安过滤器滤芯技术规范书.docx
- 粉煤灰原灰库、粗灰库、细灰库内流化风装置修复技术规范.docx
- 高标准基本农田建设规范.docx
- 高温堵漏胶供货技术规范(1).docx
- 鹤壁山城鹤鑫化工有限责任公司“9·29”较大中毒事故调查报告.pdf
- 露天矿山边坡稳定性分析评估工作指南.doc
- 汽车先进动力系统技术发展报告(2025版).pdf
- 中国人寿财产保险股份有限公司福建省(不含厦门)商业性奶牛养殖淘汰保险条款.doc
- 1.3 美国内战 课件 2025--2026学年统编版九年级历史下册.pptx
- 4.14 法西斯国家的侵略扩张 课件 2025-2026学年统编版九年级历史下册.pptx
- 6.21 冷战后的世界格局 课件 2025---2026学年统编版九年级历史下册.pptx
- 第14课《古诗二首 绝句》-课件-2025-2026学年二年级语文下册统编版.pptx
- 19.《蜘蛛开店》--(课件)-2025-2026学年二年级语文下册统编版.pptx
- 18.《大象的耳朵》第2课时(课件)-2025-2026学年二年级语文下册统编版.pptx
原创力文档


文档评论(0)