C语言常见命名规则
c语言代码命名规则
C语言代码命名规则
在编写C语言代码时,良好的命名规则是非常重要的。
它能提高
代码的可读性、可维护性和可重用性,避免歧义和错误。
以下是常见的C语言代码命名规则:
1. 变量名:使用有意义和能明确表达变量用途的词语或短语,使
用小写字母,单词之间用下划线隔开。
例如:int student_age;
2. 常量名:使用大写字母和下划线组成。
例如:#define MAX_SIZE 100;
3. 函数名:使用动词+名词形式,谓语动词放在前面,名词放在
后面。
使用小写字母,单词之间用下划线隔开。
例如:int get_student_age(int id);
4. 类型定义名:使用大写字母开头的单词,不使用下划线。
例如:typedef struct StudentTag Student;
5. 文件名:使用小写字母,单词之间用下划线隔开。
例如:student_info.c
需要注意的是,命名应当尽可能简洁明了,但不要过于简单,有
一定的描述意义。
此外,不要使用跟关键字和系统库函数相同的名称。
遵守规范的代码命名可以提高代码质量,让人们更容易理解和维护代码。
C语言命名规范10条
C语言命名规范10条第一篇:C语言命名规范10条C语言命名规范10条从事C语言的教学也有两年了,在教学中发现学生们在编程方面有一个极不好的习惯,就是随意命名,这不仅给自己日后阅读自己程序时带来不便,也给其他的程序阅读者带来麻烦,更重要的是没有统一的规范总显得像是个游击队,没有正规军的感觉,企业也不愿意要业余选手,所以C语言的初学者最好一开始就培养一种良好的编程习惯,也许日后进入公司有些改动,需要适应,但基本的规范和规则是不需要改的,这样可以帮助你少走很多弯路,经过这些年的学习和工作,总结了一些规范的内容,为了好记,便于传播,特总结为十条,建议读者采纳。
1)标识符的命名要清晰、明了,有明确含义,同时使用完整的单词或大家基本可以理解的缩写,避免使人产生误解。
程序中的英文单词一般不会太复杂,用词应当准确。
例如不要把CurrentValue写成NowValue。
2)不允许使用汉语拼音命名,更不要使用汉语,必须使用英文来命名标识符。
尽量避免名字中出现数字编号,如Value1,Value2等,除非逻辑上的确需要编号。
3)函数名、变量名从第二个单词起首字母大写。
如:printName(), oldName等4)在C 程序中只使用const常量而不使用宏常量,即const常量完全取代宏常量。
常量定义以大写字母K开头,字母全部使用大写,如:const int KSIZE = 100。
5)代码缩进使用4个空格,不推荐使用TAB键6)版权和版本的声明位于文件的开头;函数头部应进行注释,列出:函数的功能、输入参数、输出参数、返回值等。
关键代码注释位于被注释代码上方,且用空行与其他代码分割开,如:文件头注释:author: SDL teamfunction: testing hardware drivers and IDEdate: 2009.10copy right: Software College Of HeBei Normal University函数注释:function:SDL initialparameter: nonereturn: booltrue:initial SDL normallyfalse:initial SDL abnormally关键代码注释:pTemp = SDL_LoadBMP(aFileName);//format BMP file*aImg = SDL_DisplayFormat(pTemp);SDL_FreeSurface(pTemp);7)静态变量加前缀s_,如:staticints_count = 0;8)尽量避免应用全局变量,如果有特殊情况必须定义的话,全局变量以小写g_开头,如:intg_count = 0;9)结构体的名字开头字母要大写。
C语言命名规则
对非通用的变量,在定义时加入注释说明,变量定义尽量可能放在函数的开始处。
见下表:
bool(BOOL) 用b开头 bIsParent
byte(BYTE) 用by开头 byFlag
对未给出的变量类型要求提出并给出命名建议给技术委员会。
②、指针变量命名的基本原则为:
对一重指针变量的基本原则为:
“p”+变量类型前缀+命名
如一个float*型应该表示为pfStat
// 主要思路:本算法主要采用循环比较的方法来从strByDelete中找到
// 与strToDelete相匹配的字符串,对多匹配strByDelete
// 中有多个strToDelete子串)的情况没有处理。请参阅:
double(DOUBLE) 用d开头 dDeta
void(VOID) 用v开头 vVariant
unsigned int(WORD) 用w开头 wCount
unsigned long(DWORD) 用dw开头 dwBroad
对多重指针变量的基本规则为:
二重指针: “pp”+变量类型前缀+命名
三重指针: “ppp”+变量类型前缀+命名
......
③、全局变量用g_开头,如一个全局的长型变量定义为g_lFailCount,即:变量名=g_+变量类型+变量的英文意思(或缩写)
②、 函数的注释应该放置在函数的头文件中,在实现文件中的该函数的实现部分应该同时放置该注释。
③、 在注释中应该详细说明函数的主要实现思路、特别要注明自己的一些想法,如果有必要则应该写明对想法产生的来由。对一些模仿的函数应该注释上函数的出处。
c语言 命名规则
C语言命名规则一、概述命名规则是编程语言中的重要组成部分,它决定了变量、函数、常量等标识符的命名方式。
在C语言中,良好的命名规则可以增加代码的可读性和可维护性,提高程序的质量和开发效率。
本文将详细介绍C语言中的命名规则,包括标识符的命名规范、命名风格和命名约定等方面。
二、标识符的命名规范在C语言中,标识符是用来表示变量、函数、常量等的名称。
标识符的命名规范如下:1. 字母和数字标识符由字母、数字和下划线组成,且必须以字母或下划线开头。
C语言区分大小写,因此大写字母和小写字母被视为不同的字符。
2. 长度限制标识符的长度通常不超过31个字符,超过部分会被截断。
尽管C语言标准没有规定具体的长度限制,但通常遵循这个约定可以提高代码的可读性。
3. 关键字和保留字C语言中有一些关键字和保留字被用于表示特定的语法和功能,这些单词不能用作标识符。
例如,“if”、“for”、“while”等都是C语言的关键字。
4. 规范命名标识符的命名应具有描述性,能够清晰地表达其含义。
一般来说,标识符应该是名词或名词短语,并且尽量避免使用缩写和简称。
例如,“studentName”比”stuName”更能表达变量的含义。
三、命名风格命名风格是指在给标识符命名时采用的具体方式和规范。
C语言中常见的命名风格有以下几种:1. 驼峰命名法驼峰命名法是将单词的首字母大写,并将多个单词连接起来,形成一个新的标识符。
例如,“studentName”是一个采用驼峰命名法的变量名。
2. 下划线命名法下划线命名法是将单词之间用下划线连接起来,形成一个新的标识符。
例如,“student_name”是一个采用下划线命名法的变量名。
3. 全部小写有些程序员习惯将标识符全部使用小写字母,以增加代码的可读性。
例如,“studentname”是一个采用全部小写命名风格的变量名。
4. 全部大写有些常量的命名习惯采用全部大写字母,并用下划线分隔单词。
例如,“MAX_SIZE”是一个采用全部大写命名风格的常量名。
C语言代码规范
C语言代码规范作为一种广泛使用的编程语言,C语言拥有着强大的功能和广泛的应用领域。
为了编写出高质量、可读性强的代码,遵循一定的代码规范是非常重要的。
本文将介绍一些常见的C语言代码规范,旨在帮助程序员写出更加规范、易于维护的代码。
一、命名规范在编写C语言代码时,合理的命名规范可以让代码更加易读、易懂,便于他人理解和维护。
1. 变量名和函数名的命名应使用有意义的英文单词或单词组合,并采用驼峰命名法,即首字母小写,后续单词首字母大写。
例如:userName, calculateScore。
2. 宏定义和枚举常量的命名应全大写,并使用下划线分隔单词。
例如:MAX_SIZE, COLOR_GREEN。
3. 结构体和联合的命名应采用驼峰命名法,首字母大写。
例如:StudentInfo, UserInfo。
二、缩进和空格良好的缩进和适当的空格使用可以提高代码的可读性,减少错误的发生。
1. 使用4个空格进行缩进,避免使用制表符。
2. 函数和循环体内的代码块使用花括号{}包围,且左花括号与代码在同一行,右花括号独占一行。
3. 运算符之间、逗号之后应添加空格,如:a = b + c; for(int i = 0; i < n; i++)。
4. 逻辑语句和赋值语句建议每行只书写一个,以增加可读性。
三、注释规范良好的注释具有很大的意义,可以让他人更容易理解代码的功能和思路。
1. 使用注释对代码进行解释和补充说明,以便他人理解代码的功能。
2. 注释应写在需要解释的代码上方,使用//或/* */进行注释。
3. 函数和重要代码块前应添加注释,说明其功能和预期结果。
四、函数规范函数是程序的基本组织单位,采用规范的函数写法有助于提高程序的可维护性。
1. 函数应具有明确的功能和作用,函数名应符合命名规范,能准确反映函数的功能。
2. 函数的参数如果较多,建议分行书写,并使用逗号对齐。
3. 函数应有良好的结构,合理划分代码块,可读性强。
C语言常见命名规范
C 语言常见命名规范
1 常见命名规则
比较着名的命名规则首推匈牙利命名法,
这种命名方法是由Microsoft 程序员查尔斯-西蒙尼(Charles Simonyi) 提出的。
其主要思想是在变量和函数名中加入前缀以增进人们对程序的理解。
匈牙利命名法关键是:标识符的名字以一个或者多个小写字母开头作为前缀;
前缀之后的是首字母大写的一个单词或多个单词组合,该单词要指明变量
的用途。
例如:lpszStr, 表示指向一个以’\0’结尾的字符串(sz)的长指针(lp)变量。
骆驼(Camel)命名法近年来越来越流行,
在许多新的函数库和Java 这样的平台下使用得当相多。
骆驼命名法,正如它的名称所表示的那样,指的是混合使用大小写字母来。
c语言的命名
c语言的命名随着计算机技术的飞速发展,编程语言也不断涌现,其中C语言作为一门高效的编程语言,受到了广泛的关注和使用。
在C语言编程中,命名是非常重要的一环,它不仅关系到代码的可读性,还直接影响代码的质量和稳定性。
因此,我们需要有一定的基础知识和技巧来进行C语言的命名。
一、命名的基本规则1.1 命名应该具有可读性,简单明了,易于理解和记忆。
1.2 命名应该使用有意义的单词或短语,尽量避免使用拼音、缩写还有无意义的字符。
1.3 命名字符应该使用ASCII字符集,不应有中文、特殊符号及表情等。
1.4 命名应该使用有意义的词语组合,不应使用数字和符号作为命名的前缀或后缀。
1.5 命名应该遵循驼峰命名法或下划线命名法,以区分不同的单词含义。
1.6 命名应该避免与C语言的保留字重名,以免引发编译错误。
二、变量的命名在C语言中,变量是用于存储数据的标识符,命名应当符合变量的用途,可以通俗易懂的描述它所用于的功能或含义。
例如:int age; // 用于存储人的年龄,直接使用age表示即可。
char letter; // 用于存储一个字符,直接使用letter表示即可。
float height; // 用于存储身高(单位为米),直接使用height表示即可。
三、常量的命名在C语言中,常量是无法被改变的量,其值在程序运行期间不会发生任何变化。
常量的命名应该比较清晰明了,且需要添加前缀“const”。
例如:const int MONTH_NUMBER = 12; // 定义月份数,加上"const"前缀,这样就不会被改变。
const char PI = 3.1415926; // 定义圆周率,同样也要加上"const"前缀。
四、函数的命名在C语言中,函数是由一系列指令组成的代码块,其功能是完成一定的任务。
在函数的命名时,需要使用类似于变量命名的方式,简单明了、易于理解,且需要遵循驼峰命名法或下划线命名法。
c语言命名规范
c语言命名规范C语言命名规范是为了提高代码的可读性和维护性,使不同人员编写的代码在风格上保持一致。
以下是一些常见的C语言命名规范:1. 变量和函数名应使用有意义的描述性词汇,尽量使用英文单词或缩写,避免使用无意义的单词或缩写。
2. 变量名应使用小写字母,使用下划线作为单词之间的分隔符,例如:num_students。
3. 函数名应使用小写字母,每个单词的首字母大写,使用驼峰命名法,例如:calculateAverage。
4. 宏定义应使用大写字母,并用下划线分隔单词,例如:MAX_NUM。
5. 常量名应使用大写字母,并用下划线分隔单词,例如:PI。
6. 结构体名应使用大写字母开头,每个单词首字母大写,使用驼峰命名法,例如:StudentInfo。
7. 指针名应以“p_”开头,后面跟上指向的变量名,例如:p_student。
8. 数组名应采用单数形式,例如:student。
9. 枚举类型应使用大写字母命名,并用下划线分隔单词,例如:ColorType。
10. 文件名应全部小写,并用下划线分隔单词,例如:calculator.c。
11. 函数参数名应使用小写字母,使用下划线作为单词之间的分隔符,例如:num_students。
12. 类型定义名应使用大写字母开头,每个单词首字母大写,使用驼峰命名法,例如:StudentInfo。
13. 行内函数或变量的命名应使用小写字母,用下划线分隔单词,例如:get_average。
总之,C语言命名规范应尽量清晰、简洁和有意义。
使用规范的命名方法可以提高代码的可读性和可维护性,从而更好地理解和修改代码。
c语言函数命名规则
C语言函数命名规则一、概述在C语言中,函数是一种非常重要的程序组织方式。
函数命名规则的合理性直接影响到代码的可读性、可维护性和可扩展性。
本文将详细介绍C语言函数命名规则,包括命名风格、命名规范和命名约定等方面的内容。
二、命名风格2.1 驼峰命名法驼峰命名法是一种常用的命名风格,它的特点是将单词的首字母大写,并去掉单词之间的空格或下划线。
例如,printHelloWorld、getMaxValue等。
2.2 下划线命名法下划线命名法是另一种常用的命名风格,它的特点是单词之间用下划线分隔。
例如,print_hello_world、get_max_value等。
2.3 全大写命名法全大写命名法是一种常用的命名风格,它的特点是所有字母都大写,并用下划线分隔单词。
例如,PRINT_HELLO_WORLD、GET_MAX_VALUE等。
三、命名规范3.1 函数名的长度函数名应该尽量简洁明了,不宜过长。
通常情况下,函数名的长度控制在20个字符以内比较合适。
3.2 函数名的命名要求函数名应该具备以下特点:1.语义明确:函数名应该能够准确地描述函数的功能或作用。
2.动词优先:函数名通常以动词开头,表示函数的行为或操作。
3.规范命名:函数名应该使用合法的标识符,并遵循命名风格。
3.3 命名规范示例以下是一些常见的命名规范示例:1.获取最大值的函数:get_max_value2.打印欢迎信息的函数:print_welcome_message3.计算阶乘的函数:calculate_factorial4.检查字符串是否为空的函数:is_string_empty四、命名约定4.1 函数名的前缀为了更好地区分函数的用途和功能,可以使用一些常见的前缀作为函数名的一部分。
例如:1.get_:表示获取某个值或对象。
2.set_:表示设置某个值或对象。
3.is_:表示判断某个条件是否成立。
4.has_:表示判断某个对象是否具有某种属性或特性。
C语言编程规范—命名规则
C语⾔编程规范—命名规则C是⼀门朴素的语⾔,你使⽤的命名也应该这样。
与Modula-2和Pascal程序员不同,C程序员不使⽤诸如“ThisVariableIsATemporaryCounter”这样“聪明”的名字。
C程序员应该叫它“tmp”,这写起来更简单,也不会更难懂。
然⽽,当⾯对复杂情况时就有些棘⼿,给全局变量取⼀个描述性的名字是必要的。
把⼀个全局函数叫做“foo”是⼀种⽬光短浅的⾏为。
全局函数也⼀样,如果你有⼀个统计当前⽤户个数的函数,应当把它命名为“count_active_user()”或者简单点些的类似名称,不应该命名为“cntusr()”。
3.1 三种流⾏的命名法则⽬前,业界共有四种命名法则:驼峰命名法、匈⽛利命名法、帕斯卡命名法和下划线命名法,其中前三种是较为流⾏的命名法。
(1)驼峰命令法。
正如它的名称所表⽰的那样,是指混合使⽤⼤⼩写字母来构成变量和函数的名字。
例如,下⾯是分别⽤骆驼式命名法和下划线法命名的同⼀个函数:printEmployeePaychecks();print_employee_paychecks();第⼀个函数名使⽤了驼峰命名法,函数名中的每⼀个逻辑断点都有⼀个⼤写字母来标记。
第⼆个函数名使⽤了下划线法,函数名中的每⼀个逻辑断点都有⼀个下划线来标记。
驼峰命名法近年来越来越流⾏了,在许多新的函数库和Microsoft Windows这样的环境中,它使⽤得当相多。
另⼀⽅⾯,下划线法是C出现后开始流⾏起来的,在许多旧的程序和UNIX这样的环境中,它的使⽤⾮常普遍。
(2)匈⽛利命名法。
⼴泛应⽤于象Microsoft Windows这样的环境中。
Windows 编程中⽤到的变量(还包括宏)的命名规则为匈⽛利命名法,这种命名技术是由⼀位能⼲的 Microsoft 程序员查尔斯-西蒙尼(Charles Simonyi) 提出的。
匈⽛利命名法通过在变量名前⾯加上相应的⼩写字母的符号标识作为前缀,标识出变量的作⽤域、类型等。
C语言的命名规范与代码风格
C语言的命名规范与代码风格引言在编写C语言程序时,一个良好的命名规范和代码风格能够提高代码的可读性和可维护性。
本文将介绍一些常用的C语言命名规范和代码风格,帮助开发者编写规范、易读、易维护的代码。
命名规范1. 变量和函数命名•使用有意义的命名,能够准确描述变量或函数的用途。
•变量名应该使用小写字母,单词之间使用下划线分隔,例如:first_name。
•函数名首字母小写,后续单词首字母大写,采用驼峰命名法,例如:getUserInfo()。
2. 常量命名•常量名应全部大写,单词之间使用下划线分隔,例如:MAX_NUM。
•常量名应该具有描述性,能够清晰表达常量的含义。
3. 宏定义命名•宏定义命名应全部大写,单词之间使用下划线分隔,例如:#define PI3.1415926。
•宏定义命名应具有描述性,能够清晰表达宏定义的含义。
4. 结构体和枚举命名•结构体和枚举类型命名应使用驼峰命名法,首字母小写,例如:personInfo。
•枚举值命名应全部大写,单词之间使用下划线分隔,例如:STATUS_OK。
5. 文件和目录命名•文件名应使用小写字母,单词之间使用下划线分隔,例如:my_utils.c。
•目录名应使用小写字母,单词之间使用下划线分隔,例如:my_module。
6. 注释•对于每个变量或函数,在其声明之前应添加注释,描述其作用和用法。
•注释应以双斜线//开始,单行注释使用//后跟注释内容,多行注释使用/*和*/将注释内容包裹起来。
代码风格1. 缩进和空格•使用四个空格进行缩进。
•在运算符前后添加空格,增加代码的可读性。
2. 大括号•在控制语句(如if语句、for循环等)的执行块前后需要加上大括号,即使代码块只有一行。
3. 行数限制•一行最多不超过80个字符。
4. 函数和语句•每个函数之间应空出一行。
•每个语句之间也应空出一行,提高代码可读性。
5. 条件语句•在条件语句中,将常量放在前面,变量放在后面,避免将变量赋值写成判断等号。
C语言的标识符的命名规则及分类
C语言的标识符的命名规则及分类所谓标识符就是c语言中的变量名、函数名、数组名、文件名、类型名等。
C语言合法标识名的命名规则是:(1):标识符由字母、数字和下划线组成;(2):第一个字符不能是数字只能是字母或下划线;(3):区分大小写:大写字母与小写字母不同;(4):C语言规定了一个标识符允许的字符个数,即标识符的前若干个字符有效,超过的字符将不被识别。
C语言的标识符可分为关键字、预定义标识符和用户标识符3类:(1)关键字:C语言预先规定了一批标识符,它们在程序中都代表着固定的含义,不能另作他用,这些字符称为关键字,例如:int,double,if,else,while,for等;(2)预定义标识符:即预先定义并具有特定含义的标识符;(3):用户标识符:由用户根据需要定义的标识符称为用户标识符,一般用来给变量、函数、数组等命名。
c语言函数命名规范
竭诚为您提供优质文档/双击可除c语言函数命名规范篇一:c语言命名规则匈牙利命名法是微软推广的一种关于变量、函数、对象、前缀、宏定义等各种类型的符号的命名规范。
匈牙利命名法的主要思想是:在变量和函数名中加入前缀以增进人们对程序的理解。
它是由微软内部的一个匈牙利人发起使用的,结果它在微软内部逐渐流行起来,并且推广给了全世界的windows开发人员。
下面将介绍匈牙利命名法,后面的例子里也会尽量遵守它和上面的代码风格。
aarray数组bbool(int)布尔(整数)byunsignedchar(byte)无符号字符(字节)cchar字符(字节)cbcountofbytes字节数crcolorreferencevalue颜色(参考)值cxcountofx(short)x的集合(短整数)dwdwoRd(unsignedlong)双字(无符号长整数)fFlags(usuallymultiplebitvalues)标志(一般是有多位的数值)fnFunction函数g_global全局的hhandle句柄iintegerllonglplongpointerm_datamemberofaclass成员nshortintppointersstringszzeroterminatedstring符串tmtextmetricuunsignedintulunsignedlong(ulong)整数长整数长指针一个类的数据短整数指针字符串以0结尾的字文本规则无符号整数无符号长整数wwoRd(unsignedshort)无符号短整数x,yx,ycoordinates(short)坐标值/短整数vvoid空有关项目的全局变量用g_开始,类成员变量用m_,局部变量若函数较大则可考虑用l_用以显示说明其是局部变量。
前缀类型例子g_全局变量g_serversc类或者结构体cdocument,cprintinfom_成员变量m_pdoc,m_ncustomersVc常用前缀列表:前缀类型描述例子chchar8位字符chgradechtchaR16位unicode类型字符chnamebbool布尔变量benablednint整型(其大小由操作系统决定)nlengthnuint无符号整型(其大小由操作系统决定)nlength wwoRd16位无符号整型wposllong32位有符号整型loffsetdwdwoRd32位无符号整型dwRangep*ambientmemorymodelpointer内存模块指针,指针变量pdoclpFaR*长指针lpdoclpszlpstR32位字符串指针lpsznamelpszlpcstR32位常量字符串指针lpsznamelpszlpctstR32位unicode类型常量指针lpszname hhandlewindows对象句柄hwndlpfn(*fn)()回调函数指针callbackFarpointertocallbackfunctionlpfnabort windows对象名称缩写:windows对象例子变量mFc类例子对象hwndhwnd;cwnd*pwnd;hdlghdlg;cdialog*pdlg;hdchdc;cdc*pdc;hgdiobjhgdiobj;cgdiobject*pgdiobj;hpenhpen;cpen*ppen;hbRushhbrush;cbrush*pbrush;hFonthFont;cFont*pFont;hbitmaphbitmap;cbitmap*pbitmap;hpalettehpalette;cpalette*ppalette;hRgnhRgn;cRgn*pRgn;hmenuhmenu;cmenu*pmenu;hwndhctl;cstatic*pstatic;hwndhctl;cbutton*pbtn;hwndhctl;cedit*pedit;hwndhctl;clistbox*plistbox;hwndhctl;ccombobox*pcombobox;Vc常用宏定义命名列表:前缀符号类型符号例子范围篇二:c语言变量命名规则1、严格采用阶梯层次组织程序代码:各层次缩进的分格采用Vc的缺省风格,即每层次缩进为4格,括号位于下一行。
c命名规范
c命名规范C语言的命名规范是指在编写C语言程序时,为变量、函数、常量等标识符取名时应遵循的规范和约定。
一个良好的命名规范可以使程序的可读性更高,便于理解和维护。
下面是一些常见的C语言命名规范:1. 标识符的命名应具有描述性:标识符应该能够清楚地表达其所代表的意义,便于读者理解。
例如,变量名应该能够表述变量的用途和含义。
2. 使用小写字母:C语言是区分大小写的,为了避免混淆,一般采用小写字母来命名标识符。
3. 使用下划线命名法或驼峰命名法:C语言中常用的两种命名方式是下划线命名法(underscore naming)和驼峰命名法(camel case naming)。
下划线命名法指的是单词之间用下划线连接,例如:my_variable;驼峰命名法指的是第一个单词首字母小写,之后的每个单词首字母大写,例如:myVariable。
4. 避免使用特殊符号:C语言中的标识符不能包含特殊符号,如空格、点号、等号等,只能由字母、数字和下划线组成。
5. 选择具有意义的名字:标识符应该能够体现其所代表的含义。
避免使用无意义的缩写或简称,例如使用“i”代表索引值,使用“str”代表字符串等。
6. 遵循命名惯例:C语言有一些约定俗成的命名习惯。
例如,在宏定义中使用全部大写字母命名,并用下划线连接单词,例如:#define MAX_VALUE 100;结构体或联合体的命名应该以大写字母开头,例如:struct Student;常量的命名通常全大写,例如:const int MAX_SIZE = 10;函数的命名以小写字母开头,例如:void swap(int a, int b)。
7. 避免使用保留字:C语言中有一些保留字,用于表示语法结构或特殊功能,这些保留字不能用作标识符。
应避免使用保留字作为标识符,以免引起语法错误。
8. 选择简洁、清晰的名字:命名应该简洁明了,尽量避免过长的名字。
但同时也要保证名字足够清晰,尽量避免使用过于简单或模糊的名字。
c 语言命名规则
C语言命名规则详解C语言是一种广泛使用的编程语言,它有自己的命名规则,用来给变量、函数、类型、常量等标识符起名字。
命名规则的目的是让代码更加清晰、易读、统一和规范。
本文介绍了C语言中常见的四种命名法则:驼峰命名法、匈牙利命名法、帕斯卡命名法和下划线命名法,以及它们的优缺点和适用场合。
本文还介绍了一些通用的命名原则和建议,以及不同类型的标识符的命名规范和示例。
本文尽量使用表格来对比和总结不同的命名法则和规范,方便读者理解和记忆。
1. 常见的命名法则在C语言中,有四种比较流行的命名法则:驼峰命名法、匈牙利命名法、帕斯卡命名法和下划线命名法。
它们的特点和区别如下表所示:命名法则特点优点缺点适用场合驼峰命名法以小写字母开头,每个单词首字母大写,不含下划线简洁,节省空间不够明显,容易混淆变量、函数匈牙利命名法以类型或作用域为前缀,每个单词首字母大写,不含下划线明确,易于区分冗长,复杂变量、函数帕斯卡命名法以大写字母开头,每个单词首字母大写,不含下划线规范,一致不够灵活,容易冲突类型、常量下划线命名法全部小写,单词之间用下划线连接清晰,易读占用空间,不美观变量、函数2. 通用的命名原则除了遵循上述的命名法则外,还有一些通用的原则和建议可以帮助我们更好地给标识符起名字:标识符的名称应该有明确的含义,反映其作用和功能,避免使用无意义或歧义的名称。
标识符的名称应该尽量简洁而完整,避免过长或过短。
过长的名称会占用空间和时间,过短的名称会缺乏信息和可读性。
标识符的名称应该使用英文单词或常用的缩写,避免使用中文拼音或其他语言。
如果使用缩写,应该保证其能被广泛理解和接受。
标识符的名称应该区分大小写,并且保持一致。
不同类型的标识符可以采用不同的大小写风格,但同一类型的标识符应该遵循同一种风格。
标识符的名称应该避免与C语言的关键字和保留字冲突或混淆。
如果不得已使用关键字或保留字,应该加上前缀或后缀来区分。
标识符的名称应该根据其作用域和可见性来命名。
c语言的命名规则
C 语言的命名规则如下:1.标识符由字母、数字和下划线组成,必须以字母或下划线开头。
2.标识符区分大小写,因此大小写字母不同的标识符被视为不同的标识符。
3.标识符的长度没有限制,但只有前31 个字符会被处理,建议不要太长以保持可读性。
除了遵循上述基本规则外,为了编程规范和可读性,通常还有一些惯例,例如变量名使用小写字母,多个单词之间用下划线分隔(例如,my_variable),而类型名使用大写字母开头,也使用下划线分隔(例如,My_Type)。
当你在使用C 语言时,以下是一些常见的命名规则和建议:1.标识符可以使用字母(A-Z、a-z)、数字(0-9)和下划线(_)。
不允许使用其他特殊字符或空格。
2.标识符必须以字母或下划线开头,不能以数字开头。
3.标识符区分大小写,因此大小写不同的标识符被视为不同的标识符。
例如,"num" 和"Num" 是两个不同的标识符。
4.标识符的长度没有限制,但只有前31 个字符会被处理。
建议保持标识符简洁明了,避免过长的命名。
5. C 语言的关键字(例如,if、for、while 等)不能用作标识符。
6.使用有意义的标识符名称,能够清晰地表达其用途、含义或功能。
这样可以提高代码的可读性和维护性。
7.在变量、函数和宏定义的命名中,通常推荐使用小写字母和下划线的组合。
例如,my_variable、calculate_sum()。
8.类型(结构体、联合体、枚举等)和宏定义的命名通常以大写字母开头,可以使用下划线分隔单词。
例如,MyStruct、MAX_VALUE。
9.当命名多个单词时,可以使用下划线或驼峰命名法。
下划线命名法将多个单词用下划线分隔(例如,my_variable_name),而驼峰命名法将每个单词的首字母大写(除第一个单词外)(例如,myVariableName)。
10.选择命名时要保持一致性,遵循项目或团队的命名约定和规范。
c语言标识符命名规则
c语言标识符命名规则
以下是 8 条关于 C 语言标识符命名规则:
1. 标识符可不能瞎起呀,一定要有意义才行!就像给人起名字,你总不能随便叫个阿猫阿狗吧。
比如用“sum”表示求和,这多清晰呀!
2. 哎呀,标识符可不能太长啦,不然读起来多费劲呀!比如说“thisIsAVeryLongIdentifier”,谁看得下去呀,简单点不好吗?像“max”这样多好。
3. 嘿,标识符可别出现奇奇怪怪的符号哟,只能用字母、数字和下划线呢!你想想,如果里面有个乱七八糟的符号,那不就乱套啦?像
“my_variable”就很标准呀。
4. 哇塞,标识符区分大小写的哟,这可得注意啦!“Sum”和“sum”可是不一样的呢,就像大小写字母 A 和 a 是不同的呀,可别搞混啦!比如“MaxValue”和“maxvalue”。
5. 标识符可不能是 C 语言的关键字呀,这不是找别扭嘛!关键字那是
人家系统用的呀,你非要抢,那怎么行?像“int”这种就别当标识符啦!
6. 哈哈,标识符要尽量见名知意呀,让人一眼就能猜到大概是干啥的!不然你起个谁也不知道的名字,谁能懂呀?像“average_score”不就很容易理解嘛。
7. 注意啦注意啦,标识符开头不能是数字呀!这就好比人的名字不能以数字开头呀,多奇怪呀!像“2abc”可就不行哦,“result1”这样可以。
8. 哟呵,大家可得牢牢记住这些规则呀,不然写代码的时候出错了可别怪我没提醒哟!这些规则就像是游戏的规则,只有遵守了才能玩得转嘛!就像开车要遵守交通规则,不然就要出乱子啦!
我的观点结论就是:遵守 C 语言标识符命名规则真的很重要呀,这样我们的代码才能写得又规范又好读!。
C语言命名规则
匈牙利命名法是微软推广的一种关于变量、函数、对象、前缀、宏定义等各种类型的符号的命名规范。
匈牙利命名法的主要思想是:在变量和函数名中加入前缀以增进人们对程序的理解。
它是由微软内部的一个匈牙利人发起使用的,结果它在微软内部逐渐流行起来,并且推广给了全世界的Windows开发人员。
下面将介绍匈牙利命名法,后面的例子里也会尽量遵守它和上面的代码风格。
a Array 数组b BOOL (int) 布尔(整数)by Unsigned Char (Byte) 无符号字符(字节)c Char 字符(字节)cb Count of bytes 字节数cr Color reference value 颜色(参考)值cx Count of x (Short) x的集合(短整数)dw DWORD (unsigned long) 双字(无符号长整数)f Flags (usually multiple bit values) 标志(一般是有多位的数值) fn Function 函数g_ global 全局的h Handle 句柄i Integer 整数l Long 长整数lp Long pointer 长指针m_ Data member of a class 一个类的数据成员n Short int 短整数p Pointer 指针s String 字符串sz Zero terminated String 以0结尾的字符串tm Text metric 文本规则u Unsigned int 无符号整数ul Unsigned long (ULONG) 无符号长整数w WORD (unsigned short) 无符号短整数x,y x, y coordinates (short) 坐标值/短整数v void 空有关项目的全局变量用g_开始,类成员变量用m_,局部变量若函数较大则可考虑用l_用以显示说明其是局部变量。
前缀类型例子g_ 全局变量 g_ServersC 类或者结构体 CDocument,CPrintInfom_ 成员变量 m_pDoc,m_nCustomersVC常用前缀列表:前缀类型描述例子ch char 8位字符 chGradech TCHAR 16位UNICODE类型字符 chNameb BOOL 布尔变量 bEnabledn int 整型(其大小由操作系统决定) nLengthn UINT 无符号整型(其大小由操作系统决定) nLengthw WORD 16位无符号整型 wPosl LONG 32位有符号整型 lOffsetdw DWORD 32位无符号整型 dwRangep * Ambient memory model pointer 内存模块指针,指针变量 pDoclp FAR* 长指针 lpDoclpsz LPSTR 32位字符串指针 lpszNamelpsz LPCSTR 32位常量字符串指针 lpszNamelpsz LPCTSTR 32位UNICODE类型常量指针 lpszNameh handle Windows对象句柄 hWndlpfn (*fn)() 回调函数指针 Callback Far pointer to CALLBACK function lpfnAbortWindows对象名称缩写:Windows对象例子变量 MFC类例子对象HWND hWnd; CWnd* pWnd;HDLG hDlg; CDialog* pDlg;HDC hDC; CDC* pDC;HGDIOBJ hGdiObj; CGdiObject* pGdiObj;HPEN hPen; CPen* pPen;HBRUSH hBrush; CBrush* pBrush;HFONT hFont; CFont* pFont;HBITMAP hBitmap; CBitmap* pBitmap;HPALETTE hPalette; CPalette* pPalette;HRGN hRgn; CRgn* pRgn;HMENU hMenu; CMenu* pMenu;HWND hCtl; CStatic* pStatic;HWND hCtl; CButton* pBtn;HWND hCtl; CEdit* pEdit;HWND hCtl; CListBox* pListBox;HWND hCtl; CComboBox* pComboBox;VC常用宏定义命名列表:前缀符号类型符号例子范围IDR_ 标识多个资源共享的类型 IDR_MAINFRAME 1~0x6FFFIDD_ 对话框资源(Dialog) IDD_SPELL_CHECK 1~ 0x6FFFHIDD_ 基于对话框的上下文帮助 HIDD_SPELL_CHECK 0x20001~0x26FF IDB_ 位图资源(Bitmap) IDB_COMPANY_LOGO 1~0x6FFFIDC_ 光标资源(Cursor) IDC_PENCIL 1~0x6FFFIDI_ 图标资源(Icon) IDI_NOTEPAD 1~0x6FFFID_、IDM_ 工具栏或菜单栏的命令项 ID_TOOLS_SPELLING 0x8000~0xDFFF HID_ 命令上下文帮助 HID_TOOLS_SPELLING 0x18000~0x1DFFFIDP_ 消息框提示文字资源 IDP_INVALID_PARTNO 8~0xDFFFHIDP_ 消息框上下文帮助 HIDP_INVALID_PARTNO 0x30008~0x3DFFF IDS_ 字符串资源(String) IDS_COPYRIGHT 1~0x7FFFIDC_ 对话框内的控制资源 IDC_RECALC 8~0xDFFFMicrosoft MFC宏命名规范名称类型_AFXDLL 唯一的动态连接库(Dynamic Link Library,DLL)版本_ALPHA 仅编译DEC Alpha处理器_DEBUG 包括诊断的调试版本_MBCS 编译多字节字符集_UNICODE 在一个应用程序中打开UnicodeAFXAPI MFC提供的函数CALLBACK 通过指针回调的函数库标识符命名法标识符值和含义u ANSI(N)或Unicode(U)d 调试或发行:D = 调试;忽略标识符为发行静态库版本命名规范库描述NAFXCWD.LIB 调试版本:MFC静态连接库NAFXCW.LIB 发行版本:MFC静态连接库UAFXCWD.LIB 调试版本:具有Unicode支持的MFC静态连接库UAFXCW.LIB 发行版本:具有Unicode支持的MFC静态连接库动态连接库命名规范名称类型_AFXDLL 唯一的动态连接库(DLL)版本WINAPI Windows所提供的函数Windows.h中新的命名规范类型定义描述WINAPI 使用在API声明中的FAR PASCAL位置,如果正在编写一个具有导出API人口点的DLL,则可以在自己的API中使用该类型CALLBACK 使用在应用程序回调程序,如窗口和对话框过程中的FAR PASCAL的位置LPCSTR 与LPSTR相同,只是LPCSTR用于只读串指针,其定义类似(const char FAR*)UINT 可移植的无符号整型类型,其大小由主机环境决定(对于Windows NT和Windows9x为32位);它是unsigned int的同义词LRESULT 窗口程序返回值的类型LPARAM 声明lParam所使用的类型,lParam是窗口程序的第四个参数WPARAM 声明wParam所使用的类型,wParam是窗口程序的第三个参数LPVOID 一般指针类型,与(void *)相同,可以用来代替LPSTRMSDN中给出了一段遵守代码风格和匈牙利命名法的代码参考如下:1 #include “sy.h”2 extern int *rgwDic;3 extern int bsyMac;4 struct SY *PsySz(char sz[])6 {7 char *pch;8 int cch;9 struct SY *psy, *PsyCreate();10 int *pbsy;11 int cwSz;12 unsigned wHash=0;13 pch=sz;14 while (*pch!=0)15 wHash=wHash<>11+*pch++;16 cch=pch-sz;17 pbsy=&rgbsyHash[(wHash&077777)%cwHash];18 for (; *pbsy!=0; pbsy = &psy->bsyNext)19 {20 char *szSy;21 szSy= (psy=(struct SY*)&rgwDic[*pbsy])->sz;22 pch=sz;23 while (*pch==*szSy++)24 {25 if (*pch++==0)26 return (psy);27 }28 }29 cwSz=0;30 if (cch>=2)31 cwSz=cch-2/sizeof(int)+1;32 *pbsy=(int *)(psy=PsyCreate(cwSY+cwSz))-rgwDic;33 Zero((int *)psy,cwSY);34 bltbyte(sz, psy->sz, cch+1);35 return(psy);36 }按照MS方式编程:匈牙利符号表示法匈牙利符号表示法包括许多与下列命名有关的约定:(1)变量(2)函数(3)类型和常量(4)类(5)参数匈牙利符号表示法的前缀代码指导说明书:**************************************************************************前缀数据类型(基本类型)C 字符BY 字节N 短整数和整数(表示一个数)I 整数X,Y 短整数(通常用于X坐标和Y坐标)CX,CY 短整数(通常用于表示X和Y的长度,C表示计数)B 布尔型W UINT(无符号数)和WORD(无符号字)L LONG(长整数)DW DWORD(无符号长整数)FN 函数指针S 串SZ,STR 以0字节终止的字符串LP 32位长整数指针H 编号(常用于表示Windows对象)MSG 消息**************************************************************************变量的命名:应用匈牙利表示法,变量可用上表中的前缀代码来表示。
源文件的命名规则
源文件的命名规则C语言中的源文件命名规则在C语言编程中,源文件的命名规则对于程序的可读性和维护性都有一定的影响。
良好的命名规则能够让程序员更加容易理解代码的功能和作用,从而提高开发效率。
下面将介绍一些常见的C语言源文件命名规则。
1. 使用有意义的文件名在命名源文件时,应该使用能够准确描述文件功能的有意义的名称。
这样可以提高代码的可读性,避免其他人或自己在日后查看代码时产生困惑。
例如,如果源文件是用来实现一个学生管理系统的功能,可以将其命名为"student_management.c"。
2. 使用小写字母和下划线C语言是区分大小写的,因此在命名源文件时应该使用小写字母。
同时,为了增加可读性,可以使用下划线来分隔单词。
这样可以避免命名中出现过长的单词,提高代码的可读性。
例如,可以将源文件命名为"student_info.c"。
3. 使用有意义的后缀名在C语言中,源文件通常使用".c"作为后缀名。
这样可以让其他人或自己在查看文件时一目了然地知道这是一个C语言源文件。
同时,也方便编译器根据后缀名来判断文件的类型,进行相应的编译操作。
4. 避免特殊字符和数字开头在命名源文件时,应该避免使用特殊字符和数字开头。
特殊字符和数字开头的文件名可能会引起编译器的错误或警告,同时也降低了代码的可读性和可维护性。
应该使用字母开头的文件名,让其能够更好地表达文件的功能和作用。
5. 使用有序的命名方式在一个项目中,可能会有多个源文件,为了方便管理和查找,可以使用有序的命名方式。
可以按照功能或模块来命名源文件,从而使得文件的排列更加有序。
例如,可以将与学生信息相关的源文件命名为"student_info.c"、"student_input.c"、"student_output.c"等。
6. 使用简洁的命名方式在命名源文件时,应该尽量使用简洁的命名方式。
C语言变量名命名规则
C语言变量名命名规则一、程序风格:1、严格采用阶梯层次组织程序代码:各层次缩进的分格采用VC的缺省风格,即每层次缩进为4格,括号位于下一行。
要求相匹配的大括号在同一列,对继行则要求再缩进4格。
例如:2、提示信息字符串的位置在程序中需要给出的提示字符串,为了支持多种语言的开发,除了一些给调试用的临时信息外,其他所有的提示信息必须定义在资源中。
3、对变量的定义,尽量位于函数的开始位置。
二、命名规则:1、变量名的命名规则①、变量的命名规则要求用“匈牙利法则”。
即开头字母用变量的类型,其余部分用变量的英文意思或其英文意思的缩写,尽量避免用中文的拼音,要求单词的第一个字母应大写。
即:变量名=变量类型+变量的英文意思(或缩写)对非通用的变量,在定义时加入注释说明,变量定义尽量可能放在函数的开始处。
见下表:对未给出的变量类型要求提出并给出命名建议给技术委员会。
②、指针变量命名的基本原则为:对一重指针变量的基本原则为:“p”+变量类型前缀+命名如一个float*型应该表示为pfStat对多重指针变量的基本规则为:二重指针:“pp”+变量类型前缀+命名三重指针:“ppp”+变量类型前缀+命名......③、全局变量用g_开头,如一个全局的长型变量定义为g_lFailCount,即:变量名=g_+变量类型+变量的英文意思(或缩写)④、静态变量用s_开头,如一个静态的指针变量定义为s_plPerv_Inst,即:变量名=s_+变量类型+变量的英文意思(或缩写)⑤、成员变量用m_开头,如一个长型成员变量定义为m_lCount;即:变量名=m_+变量类型+变量的英文意思(或缩写)⑥、对枚举类型(enum)中的变量,要求用枚举变量或其缩写做前缀。
并且要求用大写。
如:enum cmEMDAYS{EMDAYS_MONDAY;EMDAYS_TUESDAY;……};⑦、对struct、union、class变量的命名要求定义的类型用大写。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言常见命名规则
一、概述
比较著名的命名规则首推匈牙利命名法,这种命名方法是由Microsoft程序员查尔斯·西蒙尼(Charles Simonyi)提出的。
其主要思想是“在变量和函数名中加入前缀以增进人们对程序的理解”。
匈牙利命名法关键是:标识符的名字以一个或者多个小写字母开头作为前缀;前缀之后的是首字母大写的一个单词或多个单词组合,该单词要指明变量的用途。
[例如]lpszStr,表示指向一个以'\0'结尾的字符串(sz)的长指针(lp)变量。
骆驼(Camel)命名法近年来越来越流行,在许多新的函数库和Java这样的平台下使用得当相多。
骆驼命名法,正如它的名称所表示的那样,指的是混合使用大小写字母来构成标识符的名字。
其中第一个单词首字母小写,余下的单词首字母大写。
[例如]printEmployeePaychecks(),函数名中每一个逻辑断点都有一个大写字母来标记。
帕斯卡(Pascal)命名法与骆驼命名法类似。
只不过骆驼命名法是第一个单词首字母小写,而帕斯卡命名法则是第一个单词首字母大写。
[例如]DisplayInfo()和UserName都是采用了帕斯卡命名法。
在C#中,以帕斯卡命名法和骆驼命名法居多。
事实上,很多程序设计者在实际命名时会将骆驼命名法和帕斯卡结合使用,例如变量名采用骆驼命名法,而函数采用帕斯卡命名法。
另一种流行的命名规则称为下划线命名法。
下划线法是随着C语言的出现流行起来的,在UNIX/LIUNX这样的环境,以及GNU 代码中使用非常普遍。
1、常量名用大写,太长时用下划线隔开:
1.#define MAX
2.#define INCREMENT_SIZE
2、变量名采用小驼峰形式书写:
1.int first
2.float newElem
3、函数名、结构名和联合名采用大驼峰形式书写:
1.void ClearList(List*L)
2.{
3.….
4.}
5.int PutElem(int elem)
6.{
7.….
8.}
9.typedef struct LinkNode
10.{
11.int data;
12.struct LinkNode*next;
13.}*LinkPoint;
4、全局变量加前缀“g_”,其余特殊变量类似
本章所述的命名规则主要基于下划线命名法发展而来。
二、各类命名规则
1.函数的命名
函数名使用下划线分割小写字母的方式命名:
设备名_操作名()
操作名一般采用:谓语(此时设备名作为宾语或者标明操作所属的模块)或者谓语+宾语/表语(此时设备名作为主语或者标明操作所属的模块)等形式,如:
1.tic_init()
2.adc_is_busy()
3.uart_tx_char()
中断函数的命名直接使用设备名_isr()的形式命名,如:
1.timer2_isr()
2.变量的命名
变量的命名也采用下划线分割小写字母的方式命名。
命名应当准确,不引起歧义,且长度适中。
如:
1.int length;
2.uint32test_offset;
单字符的名字也是常用的,如i,j,k等,它们通常可用作函数内的局部变量。
�tmp常用做临时变量名。
局部静态变量,应加s_词冠(表示static),如:
1.static int s_lastw;
全局变量(尤其是供外部访问的全局变量),应加g_词冠(表示global),如:
1.void(*g_capture_hook)(void);
3.常量及宏的命名
采用下划线分割大写字母的方式命名,一般应以设备名作为前缀,防止模块间命名的重复。
如:
1.#define TIMER0_MODE_RELOAD2
2.#define TIMER2_COUNT_RETRIEVE(val)((uint16)(65535-(val)))
当然,看作接口的宏可以按照函数的命名方法命名,例如:
1.#define timer2_clear()(TF2=0)
2.#define timer0_is_expired()(TF0)
4.常用缩写词
原词缩写
addition add
answer ans
array arr
average avg
buffer buf或buff capture cap或capt check chk
count cnt
column col control ctrl decode dec define def
delete del destination dst或dest display disp division div
encode enc environment env
error err
float flt frequency freq
header hdr
index idx
image img increment inc
initalize init
iteration itr
length len memory mem middle mid
make mk message msg multiplication mul number num operand opnd optimization opt operator optr
packet pkt positon pos previous pre或prev payload type pt pointer ptr
return code rc
record rcd receive recv result res
return ret
source src
stack stk
string str
subtraction sub
table tab
temporary tmp或temp
total tot
time stamp ts
value val
5.结语
没有一种命名规则可以让所有的程序员赞同。
而这多种命名规则也确实各有利弊。
没有必要花太多的精力试图发明最好的命名规则,而是应当制定一种令大多数项目成员满意的命名规则并切实执行。
标识符命名的一致性自然会体现出代码的优雅。
当然,如果你的程序使用了第三方的代码,而这些模块经验证确实是正确无误的。
那么也没有必要一味追求命名的一致性,而去修改这些已经定型的模块中的函数和变量名。