C语言常见命名规范

您所在的位置:网站首页 c语言标识符命名规则是什么可以有井号吗 C语言常见命名规范

C语言常见命名规范

2024-07-14 12:38| 来源: 网络整理| 查看: 265

C语言常见命名规范

目录 C语言常见命名规范 一、常见命名规则1、匈牙利命名法2、骆驼(Camel)命名法3、帕斯卡(Pascal)命名法。4、下划线命名法。 二、函数的命名三、变量的命名四、常量及宏的命名五、常用缩写词

文章转载:https://www.cnblogs.com/liujiahi/archive/2011/09/16/2196348.html

一、常见命名规则 1、匈牙利命名法

  这种命名方法是由Microsoft程序员查尔斯·西蒙尼(Charles Simonyi) 提出的。其主要思想是“在变量和函数名中加入前缀以增进人们对程序的理解”。

  匈牙利命名法关键是:标识符的名字以一个或者多个小写字母开头作为前缀;前缀之后的是首字母大写的一个单词或多个单词组合,该单词要指明变量的用途。

例如:lpszStr,表示指向一个以'0'结尾的字符串(sz)的长指针(lp)变量。 2、骆驼(Camel)命名法

  骆驼命名法,正如它的名称所表示的那样,指的是混合使用大小写字母来构成标识符的名字。其中第一个单词首字母小写,余下的单词首字母大写。

例如:printEmployeePaychecks(),函数名中每一个逻辑断点都有一个大写字母来标记。 3、帕斯卡(Pascal)命名法。

  帕斯卡(Pascal)命名法和骆驼命名法相似,但帕斯卡命名法则是第一个单词首字母大写。

例如:DisplayInfo()和UserName都是采用了帕斯卡命名法。

  事实上,很多程序设计者在实际命名时会将骆驼命名法和帕斯卡结合使用,例如变量名采用骆驼命名法,而函数采用帕斯卡命名法。

4、下划线命名法。

  下划线法是随着C语言的出现流行起来的,在UNIX/LIUNX这样的环境,以及GNU代码中使用非常普遍。

二、函数的命名

  函数名使用下划线分割小写字母的方式命名:设备名_操作名() 。   操作名一般采用:谓语(此时设备名作为宾语或者标明操作所属的模块)或者谓语+宾语/表语(此时设备名作为主语或者标明操作所属的模块) 等形式。

例如:tic_init() adc_is_busy() uart_tx_char()

  中断函数的命名直接使用 设备名_isr() 的形式命名。

例如:timer2_isr() 三、变量的命名

  变量的命名也采用下划线分割小写字母的方式命名。命名应当准确,不引起歧义,且长度适中。

例如:int length; uint32 test_offset;

  单字符的名字也是常用的。

例如i, j, k等,它们通常可用作函数内的局部变量。

  tmp常用做临时变量名。局部静态变量,应加s_词冠(表示static)。

例如:static int s_lastw;

  全局变量(尤其是供外部访问的全局变量),应加g_词冠(表示global)。

例如:void (* g_capture_hook)(void); 四、常量及宏的命名

  采用下划线分割大写字母的方式命名,一般应以设备名作为前缀,防止模块间命名的重复。

例如: #define TIMER0_MODE_RELOAD 2 #define TIMER2_COUNT_RETRIEVE(val) ((uint16)(65536 - (val)))

  当然,看作接口的宏可以按照函数的命名方法命名。

例如: #define timer2_clear() (TF2 = 0) #define timer0_is_expired() (TF0) 五、常用缩写词 原词缩写含义additionadd加subtractionsub减multiplicationmul乘法divisiondiv除法answerans响应、回答arrayarr数组、集合averageavg平均bufferbuf或buff缓冲区capturecap或capt捕获checkchk检查countcnt计数器columncol列controlctrl控制decodedec解码、译码definedef定义deletedel删除destinationdst或dest目的displaydisp显示encodeenc编码environmentenv环境errorerr错误floatflt浮动、浮点frequencyfreq频率headerhdr开始、开头indexidx索引、指示、imageimg影像、镜像incrementinc增加、增量initalizeinit初始化iterationitr循环、迭代lengthlen长度memorymem内存middlemid中值makemk制造、形成messagemsg消息numbernum数量、编号operandopnd操作数optimizationopt最优operatorvoptr操作packetpkt息包positonpos位置previouspre或prev以前的pointerptr指针recordrcd记录receiverecv收到、接收resultres结果returnret返回sourcesrc源头stackstk栈stringstr字符串tabletab表temporarytmp或temp临时totaltot全部的time stampts时间戳valueval值


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3