定义变量和常量的规范 c语言,C语言编程规范教材及练习(标识符命名与定义 变量 宏、常量 表的达式).pptx...

C语言编程规范教材及练习(标识符命名与定义 变量 宏、常量 表的达式)

C语言编程规范教材C语言编程规范工作组 201104目录标识符命名与定义 变量宏、常量表达式标识符的命名要清晰原则3.1 标识符的命名要清晰、明了,有明确含义,同时使用完整的单词或大家基本可以理解的缩写,避免使人产生误解。尽可能给出描述性名称,不要节约空间,让别人很快理解你的代码更重要示例:好的命名:int num_errors; int num_completed_connections; 不好的命名:使用模糊的缩写或随意的字符: int n; int nerr; int n_comp_conns; 不使用单词缩写Page 原则3.2 除了常见的通用缩写以外,不使用单词缩写,不得使用汉语拼音。较短的单词可通过去掉“元音”形成缩写,较长的单词可取单词的头几个字母形成缩写,一些单词有大家公认的缩写,常用单词的缩写必须统一。协议中的单词的缩写与协议保持一致。对于某个系统使用的专用缩写应该在注视或者某处做统一说明。示例:一些常见可以缩写的例子:argument 可缩写为 argbuffer 可缩写为 buf产品/项目组统一的命名风格Page 规则3.1 产品/项目组内部应保持统一的命名风格。Unix like和windows like风格均有其拥趸,产品应根据自己的部署平台,选择其中一种,并在产品内部保持一致。unix like风格:单词用小写字母,每个单词直接用下划线‘_’分割,例如text_mutex,kernel_text_addressWindows风格:大小写字母混用,单词连在一起,每个单词首字母大写。不过Windows风格如果遇到大写专有用语时会有些别扭,例如命名一个读取RFC文本的函数,命令为ReadRFCText,看起来就没有unix like的read_rfc_text清晰了。通用命名规则Page 建议3.1 用正确的反义词组命名具有互斥意义的变量或相反动作的函数等。建议3.2 尽量避免名字中出现数字编号,除非逻辑上的确需要编号。建议3.3 标识符前最好不加模块、项目、产品、部门的名称。建议3.4 平台/驱动等适配代码的标识符命名风格保持和平台/驱动一致。建议3.5 重构/修改部分代码时,应保持和原有代码的命名风格一致。文件命名采用小写字符。Page 建议3.6 文件命名统一采用小写字符。因为不同系统对文件名大小写处理会不同(如MS的DOS、Windows系统不区分大小写,但是Linux系统则区分),所以代码文件命名建议统一采用全小写字母命名。变量命名要求Page 规则3.2 全局变量应增加“g_”前缀。规则3.3 静态变量应增加“s_”前缀。规则3.4 禁止使用单字节命名变量,但允许定义i、j、k作为局部循环变量建议3.7 不建议使用匈牙利命名法建议3.8 使用名词或者形容词+名词方式命名变量。函数命名:采用动词或者动词+名词的结构Page 建议3.9 函数命名应以函数要执行的动作命名,一般采用动词或者动词+名词的结构。示例:找到当前进程的当前目录DWORD GetCurrentDirectory( DWORD nBufferLength, LPTSTR lpBuffer );宏的命名规则Page 规则3.5 对于数值或者字符串等等常量的定义,建议采用全大写字母,单词之间加下划线‘_’的方式命名(枚举同样建议使用此方式定义)。示例:#define PI_ROUNDED 3.14规则3.6 除了头文件或编译开关等特殊标识定义,宏定义不能使用下划线‘_’开头和结尾。练习判断题(在括号内打“√”或“×”)标识符的命名要清晰、明了。 ( )除了常见的通用缩写以外,不使用单词缩写。( )产品/项目组内部应保持统一的命名风格。 ( )禁止使用单字节命名变量,定义‘ii’使用就没有问题了。( )单选题下面几个变量的命名,最好的一个是( )。A、int num_errors;B、int n;C、int nerr;D、int n_comp_conns;Page 目录标识符命名与定义 变量宏、常量表达式变量职责单一原则4.1 一个变量只有一个功能,不能把一个变量用作多种用途。一个变量只用来表示一个特定功能,不能把一个变量作多种用途,即同一变量取值不同时,其代表的意义也不同。示例:具有两种功能WORD DelRelTimeQue(T_TCB *ptTcb){WORD Locate;?Locate = 3;Locate = DeleteFromQue(Locate); /* Locate 具有两种功能:位置和函数DeleteFromQue的返回值 */return Locate;}正确做法:使用两个变量WORD DelRelTimeQue(T_TCB *ptTcb ){WORD Ret;WORD Loca

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值