C语言常见命名规则-2023修改整理_第1页
C语言常见命名规则-2023修改整理_第2页
C语言常见命名规则-2023修改整理_第3页
C语言常见命名规则-2023修改整理_第4页
C语言常见命名规则-2023修改整理_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

千里之行,始于足下让知识带有温度。第第2页/共2页精品文档推荐C语言常见命名规则C语言常见命名规章

一、概述

比较闻名的命名规章首推匈牙利命名法,这种命名办法是由Microsoft程序员查尔斯·西蒙尼(CharlesSimonyi)提出的。其主要思想是“在变量和函数名中加入前缀以增进人们对程序的理解”。匈牙利命名法关键是:标识符的名字以一个或者多个小写字母开始作为前缀;前缀之后的是首字母大写的一个单词或多个单词组合,该单词要指明变量的用途。

[例如]lpszStr,表示指向一个以'\0'结尾的字符串(sz)的长指针(lp)变量。

骆驼(Camel)命名法近年来越来越流行,在许多新的函数库和Java这样的平台下使用得当相多。骆驼命名法,正如它的名称所表示的那样,指的是混合使用大小写字母来构成标识符的名字。其中第一个单词首字母小写,余下的单词首字母大写。

[例如]printEmployeePaychecks(),函数名中每一个规律断点都有一个大写字母来标记。

帕斯卡(Pascal)命名法与骆驼命名法类似。只不过骆驼命名法是第一个单词首字母小写,而帕斯卡命名法则是第一个单词首字母大写。

[例如]DisplayInfo()和UserName都是采纳了帕斯卡命名法。

在C#中,以帕斯卡命名法和骆驼命名法居多。

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

另一种流行的命名规章称为下划线命名法。

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

1、常量名用大写,太长时用下划线隔开:

1.#defineMAX

2.#defineINCREMENT_SIZE

2、变量名采纳小驼峰形式书写:

1.intfirst

2.floatnewElem

3、函数名、结构名和联合名采纳大驼峰形式书写:

1.voidClearList(List*L)

2.{

3.….

4.}

5.intPutElem(intelem)

6.{

7.….

8.}

9.typedefstructLinkNode

10.{

11.intdata;

12.structLinkNode*next;

13.}*LinkPoint;

4、全局变量加前缀“g_”,其余特别变量类似

本章所述的命名规章主要基于下划线命名法进展而来。

二、各类命名规章

1.函数的命名

函数名使用下划线分割小写字母的方式命名:

设备名_操作名()

操作名普通采纳:谓语(此时设备名作为宾语或者标明操作所属的模块)或者谓语+宾语/表语(此时设备名作为主语或者标明操作所属的模块)等形式,如:

1.tic_init()

2.adc_is_busy()

3.uart_tx_char()

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

1.timer2_isr()

2.变量的命名

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

1.intlength;

2.uint32test_offset;

单字符的名字也是常用的,如i,j,k等,它们通常可用作函数内的局部变量。

?tmp常用做暂时变量名。

局部静态变量,应加s_词冠(表示static),如:

1.staticints_lastw;

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

1.void(*g_capture_hook)(void);

3.常量及宏的命名

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

1.#defineTIMER0_MODE_RELOAD2

2.#defineTIMER2_COUNT_RETRIEVE(val)((uint16)(65535-(val)))

固然,看作接口的宏可以根据函数的命名办法命名,例如:

1.#definetimer2_clear()(TF2=0)

2.#definetimer0_is_expired()(TF0)

4.常用缩写词

原词缩写

additionadd

answerans

arrayarr

averageavg

bufferbuf或buffcapturecap或captcheckchk

countcnt

columncolcontrolctrldecodedecdefinedef

deletedeldestinationdst或destdisplaydispdivisiondiv

encodeencenvironmentenv

errorerr

floatfltfrequencyfreq

headerhdr

indexidx

imageimgincrementinc

initalizeinit

iterationitr

lengthlenmemorymemmiddlemid

makemkmessagemsgmultiplicationmulnumbernumoperandopndoptimizationoptoperatoroptr

packetpktpositonpospreviouspre或prevpayloadtypeptpointerptr

returncoderc

recordrcdreceiverecvresultres

returnret

sourcesrc

stackstk

stringstr

subtractionsub

tabletab

temporarytmp或temp

totaltot

timestampts

valueval

5.结语

没有一种命名规章可以让全部的程序员赞同。而这多种命名规章也的确各有利弊。

没有须要花太多的精力试图发明最好的命名规章,而是应该制定一种令大

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论