如何规范宏和常量以及命名

宏和常量◎ 宏定义和常量使用大写字母或下划线。
◎ 用宏定义表达式时,要使用完备的括号,如下:
#define hehe_area(a, b) ((a) * (b))◎ 宏定义中尽量不要使用return、goto、continue、break等改变程序流程的语句。
◎ 常量建议使用const定义代替宏,如下
#define aspect_ratio 1.653 替换成 const double aspect_ratio = 1.653;◎ 除非必要,应尽可能使用函数代替宏 。
◎ 将宏定义的多条表达式放在大括号中。
◎ 使用宏时,不允许参数发生变化。
◎ 尽量少用魔法数,或者必须加注释说明,或者修改方案,如内存长度操作禁止使用常数,非特殊情况必须使用sizeof自动处理。
2.6 命名命名采用unix like风格,单词用小写字母,每个单词之间用下划线分割,引用的第三方的代码可保持原有风格,命名尽量使用通用英文单词或缩写。
2.6.1 文件
文件名命名可根据平台自有规则命名,一般采用小写字符,字段之间使用下划线分隔;相同功能的 .c和.h文件名相同。
2.6.2 枚举
枚举定义:宏定义和枚举值禁止使用小写字母,不能以下划线开头,字段之间使用下划线分隔,若逻辑中要标注多种状态,状态不允许用数字表示。
2.6.3 结构体
1、结构体定义,若同一功能所使用到的参数,尽量用结构体来定义表示,便于相关参数获取和设置。
2、纯业务逻辑代码,与平台无关的,必须使用小写字符和下划线分隔。
2.6.4 函数
函数名定义,函数名称需体现出函数具体功能,均由功能单词拼接组成,使用小写字母和下划线拼接,其中全局函数必须以xx_为前缀,在.h里面申明全局函数,补充完整注释;局部函数使用static限制。
2.6.5 变量
◎ 禁止使用全大写字母命名变量,全局变量至少5个字母,使用高频次的全局变量尽量简短。
◎ 全局变量命名表达其作用,且以小写字母g_开头,后面拼接功能英文,如地址:g_addr。
◎ 变量名的拼接,全部使用小写字母和下划线拼接,函数内局部变量允许使用单个字母。
◎ 多个同类的变量封装成结构体。
2.6.6 推荐命名
add/delete begin/end create/destroy insert/deletefirst/last increment/decrement get/set/release up/downlock/unlock open/close min/max old/newstart/stop next/previous source/target send/receive

波音星际线宇宙飞船无法抵达国际空间站,准备返航
IPMI是什么 IPMI可以实现的主要功能有哪些
本安型仪表简介
华盛顿的小镇Wenatchee正在成为比特币矿商的新家园
新型CMOS图像传感器原理及设计
如何规范宏和常量以及命名
DNC自动化系统的信息流程图
分流电流传感器和电容降电源设计磁免疫电子仪表
疯狂的背后,UVC仍未起量
投资不再疯狂?2017年半导体行业市场观察
荣耀MagicBook 14/15笔记本,锐龙处理器加钻切蓝边设计成学生党新宠
东风本田UR-V怎么样?时尚外观、豪华内饰、空间出色的特点为核心竞争力!
为什么手机越用续航时间越短,究竟是什么原因
Spice仿真来获得图形化的仿真数据
归谷企业咖丨进击的新松:世界舞台中央的中国机器人
耐用PROFINET主站设备与PROFIBUS从站连接方法
Bridge Biotherapeutics与Atomwise达成AI相关的合作
VLAN的基础知识总结
特斯拉欧洲工厂产能过剩问题 未来能否解决还未可知
CAN接120欧姆终端电阻的原因分析