C编程中的“命名规则”是指命名标识符时要遵循的规则。标识符主要包括变量名、函数名和宏名。
一、常用命名规则
与著名的命名规则相比,匈牙利命名法是第一个。这种命名方法是由微软程序员查尔斯·西蒙尼提出的。其主要思想是“给变量和函数名加上前缀,以提高人们对程序的理解”。匈牙利命名法的关键是:标识符的名称,以一个或多个小写字母为前缀;前缀后面是大写字母的单词或单词组合,表示变量的用途。例如,lpszStr表示指向以“”结尾的字符串(sz)的长指针(1p)变量。
骆驼命名法是近年来越来越流行的命名法。很多新的函数库和Java平台都使用得当。Camel命名法,顾名思义,指的是使用大小写字母混合构成标识符的名称。第一个字小写,其余大写。例如:printEmployeePaychecks(),函数名中的每个逻辑断点都用大写字母标记。
帕斯卡的命名法和骆驼的命名法类似,只不过骆驼的命名法第一个字母是小写的,而帕斯卡的命名法是大写的。比如DisplayInfo()和UserName都是Pascal命名的。
在C语言中,Pascal命名法和camel命名法占多数。实际上,很多程序员在实际命名中会将camel命名和Pascal结合起来,比如变量名用camel命名,函数用Pascal命名。
另一个流行的命名规则叫做下划线命名。下划线是随着C语言的出现而流行的,在UNIX/LIUNX和GNU代码中被广泛使用。本文描述的命名规则主要基于下划线命名法。
二。函数的命名
函数名通过用下划线分隔小写字母来命名,例如:
设备名称_操作名称0
操作名一般采用谓语形式(此时设备名作宾语或表示操作所属模块)或谓语+宾语/述语形式(此时设备名作主语或表示操作所属模块),如:
tic_init()
adc_is_busy()
uart发送字符()
中断函数的名字直接以device name _isr()的形式命名,比如:
定时器2_isr()
三。变量的命名
该变量也通过用下划线分隔小写字母来命名。命名应该准确,不含糊,长度适中。比如:
intlength
uint 32测试偏移量;
单个字符的名字也常用,如I,J,K等。它们通常可以用作函数中的局部变量。
tmp的常用变量名。
局部变量要冠以s_ (static),比如:
static int s _ lastw
全局变量(尤其是用于外部访问的全局变量)应该冠以G(全局),例如:
void(* g _ capture _ hook)(void);
四。常量和宏的命名
一般来说,设备名称应该用作前缀,以防止模块之间的重复命名。比如:
#定义定时器0 _模式_重载2
# define timer 2 _ COUNT _ RE-TRIEVE(val)((uin TL 6)(65536 _(val)))
当然,被视为接口的宏可以根据函数的命名方法来命名,比如:
#定义定时器2_clearo(TF2=0)
#定义定时器0已到期(TF0)
五、常用缩写
其实并没有一个所有程序员都能认同的命名规则。这些命名规则确实各有利弊。没有必要花费太多的精力试图发明最好的命名规则,但是应该制定并实现一个让大多数项目成员满意的命名规则。命名标识符的一致性自然会反映代码的优雅。当然,如果你的程序使用了第三方代码,并且这些模块被验证是正确的,那么就没有必要盲目追求命名的一致性,修改这些定型模块中的函数和变量的名字。
常见缩写见附表。
另一方面,如果你想学习C/C++,笔者有C/C++编程千人(学习C语言编程的聚集地(无字建立)),有兴趣学习或学习C/C++编程的朋友可以进来交流。另外,笔者正在分享一个C/C++的学习路线图,希望对大家有帮助~
本文来自不择手段投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/540849.html