C语言编程规范——命名规则

一、C语言变量名的命名规则

1.只能以字母下划线开始

2.不能以数字开始

3.不能使用默认关键字

4.一般使用小写

在程序设计中,变量名、函数名、数组名等统称为标识 符。简单地说,标识符就是一个名字。除库函数的函数名由系统定义外,其余都由用户自定义。C语言规定,标识符只能由字母(a~z,A~Z)、数字 (0~9)、下划线(_)组成,并且标识符的第一个字符必须是字母或下划线,不能以数字开头。C语言不限制标识符的长度,但它受各种C语言编译器的限制, 同时也受到具体机器的限制。例如,在某编译器中规定标识符前8位有效,当两个标识符前8位相同时,则被认为是同一个标识符。建议变量名的长度最好不要超过 8个字符

二、命名风格

序号 类型 描述
1 驼峰命名法 首字母小写,每个逻辑点使用大写字母来标记。一般用于全局变量、函数、结构体变量、对象名。示例myData
2 帕斯卡命名法 与驼峰命名法类似,只是 首字母大写一般用于结构名、类名。示例:MyData
3 下划线命名法 函数名中的每个逻辑断点都用下划线 _分割,C程序和UNIX这样的环境中,它的使用非常普遍一般用于函数、变量。示例:my_data
4 匈牙利命名法 变量名前面加上相应的小写字母的符号标识作为前缀,标识出变量的作用域、类型等。示例:i_MyData

驼峰命名法

程序员们为了自己的代码能更容易的在同行之间交流,所以才取统一的可读性比较好的命名方式。例如:有些程序员喜欢全部小写,有些程序员喜欢用下划线,所以如果要写一个my name的变量,他们常用的写法会有myname、my_name、MyName或者myName。这样的命名规则不适合所有程序员阅读,而利用驼峰命名法来表示,可以增加程序可读性。

驼峰命名法就是当变量名或函数名是由一个或多个单字连结在一起,而构成的唯一识别字时,第一个单字以小写字母开始,第二个单字的首字母大写;或每一个单字的首字母都采用大写字母,例如:myFirstName、myLastName,这样的变量名看上去就像骆驼峰一样此起彼伏,故而得名。

三、 宏 命名规则

命名全部大写,使用下划线 _连接。

#define 	SECONDS_PER_YEAR 	(60 * 60 * 24 * 365)UL

四、函数 命名规则

一般来说,函数名的每个单词首字母大写,没有下划线。
对于首字母缩写的单词,更倾向于将它们视作一个单词进行首字母大写。

序号 方式 描述
1 驼峰命名法 myFunctio()deleteUrl()
2 下划线命名法 my_function()
3 帕斯卡命名法 MyFunction()DeleteUrl()

五、变量 命名规则

函数参数、类成员、局部变量、结构体内变量

变量(包括函数参数) 和数据成员名一律小写,单词之间用下划线 _连接
类的成员变量以下划线结尾,但结构体的就不用。

序号 类别 举例
1 局部变量、函数参数 local_variable
2 结构体内的变量 struct_data_member
3 类的成员变量 class_data_member_

六、类型 命名规则

类,结构体,类型定义(typedef),枚举,类型模板参数

均使用相同约定,即以大写字母开始,每个单词首字母均大写,不包含下划线(帕斯卡命名法)

class BookCartoon {
	string 	title_;		
	string 	author_;		
};

struct BookCartoon {
	char 	title[40];		
	char 	author[40];		
};

typedef struct {
	char 	title[40];		
	char 	author[40];				
} BookCartoon;

enum ButtonState {
	SHORT_PRESS,	/* 短按 */
	LONG_PRESS,		/* 长按 */
};

typedef enum  {
	SHORT_PRESS,	/* 短按 */
	LONG_PRESS,		/* 长按 */
} ButtonState;

Linux环境下命名的注意点

(1)变量名必须有一定的意义,并且意义准确。例如 有一个变量用于保存图书的数目,可以命名为number_of_book或者num_of_book。不建议使用i,因为它没有意义。也不建议使用 number或book,因为意义不准确。

(2)不建议大小写混用。如定义一个计数变 量,int nCount;这在Windows中是一个很好的变量名,其中nCount的首字母n用来说明这个变量的类型是int。但在Linux下不建议大小写混合 使用,一般标识符只由小写字母,数字和下划线构成。

(3)在失去意义的情况下,尽量使用较短的变量名。 例如有一个变量,用于暂时存储一个计数值,把变量命名为tmp_count显然要比this_is_a_temperary_counter好。

(4)函数名应该以动词开头,因为函数是一组具有特 定功能的语句块。比如一个函数,它用于取得外部输入的数值,则可以命名为get_input_number。

posted @ 2024-05-03 15:49  banon  阅读(3273)  评论(0编辑  收藏  举报