C语言命名规则

合集下载

c语言中用户标识符的命名规则

c语言中用户标识符的命名规则

c语言中用户标识符的命名规则C语言是一种广泛应用于软件开发的编程语言,其用户标识符的命名规则非常重要。

用户标识符是指程序员自定义的变量、函数、常量等命名,在程序中起到标识和代表的作用。

遵守良好的命名规则不仅能提高代码的可读性和可维护性,还能减少程序出错的概率。

1. 标识符的命名规则C语言中的用户标识符命名规则如下:- 标识符由字母、数字和下划线组成,但必须以字母或下划线开头。

- 标识符区分大小写,因此myVar和myvar是不同的标识符。

- 标识符的长度没有限制,但一般建议不要超过32个字符。

- 不能使用C语言的关键字作为标识符,如if、for、while等。

- 标识符中不能包含空格、特殊字符和运算符。

- 标识符应具有描述性,能够清晰表达其所代表的含义。

2. 标识符的命名规范为了使代码的可读性更高,标识符的命名应遵循一些规范:- 标识符应该具有描述性,能够清晰地表达其所代表的含义。

例如,变量名可以使用英文单词或缩写,函数名可以使用动词或动词加名词的形式。

- 标识符应该使用驼峰命名法或下划线命名法。

驼峰命名法将多个单词连接在一起,每个单词的首字母大写,如myVariable;下划线命名法使用下划线分隔单词,如my_variable。

- 对于常量,可以使用全大写字母,多个单词之间使用下划线分隔,如MAX_SIZE。

- 避免使用单个字母作为标识符,除非在循环变量或临时变量中使用。

- 尽量避免使用简单的缩写或缩写的单词,以增加代码的可读性。

- 在命名时要注意语义的准确性和一致性,避免产生歧义。

3. 命名示例下面是一些符合C语言标识符命名规则和规范的示例:- 变量名:count、maxValue、average_score- 函数名:calculateSum、printMessage、getInput- 常量名:PI、MAX_SIZE、DEFAULT_VALUE- 结构体名:Student、Employee、Point4. 命名的重要性良好的命名规则和规范能够提高代码的可读性和可维护性。

c语言用户标识符的命名规则

c语言用户标识符的命名规则

c语言用户标识符的命名规则C语言是一种广泛应用于计算机编程的高级编程语言,其用户标识符的命名规则对于编程人员来说至关重要。

用户标识符是指变量、函数、数组等在程序中使用的名称。

合理的命名规则可以提高程序的可读性和可维护性,降低程序出错的可能性。

下面将介绍C语言用户标识符的命名规则。

1. 标识符的组成C语言的标识符由字母、数字和下划线组成,但必须以字母或下划线开头。

标识符是区分大小写的,因此大写字母和小写字母被视为不同的字符。

标识符的长度没有限制,但通常建议不超过32个字符。

2. 合法的命名规则合法的标识符应遵循以下规则:- 只能包含字母、数字和下划线;- 不能以数字开头;- 不能使用C语言中的关键字作为标识符;- 不能包含空格和特殊字符,如@、#、$等;- 不能与C标准库中的函数或变量同名。

3. 命名规范为了提高程序的可读性和可维护性,我们需要遵循一些命名规范,如下所示:3.1 使用有意义的名称标识符应具有描述性,能够清晰地表达其含义。

例如,使用"count"代表计数器,使用"sum"代表求和等。

避免使用无意义的缩写或单个字母作为标识符。

3.2 使用驼峰命名法驼峰命名法是一种常用的命名规范,在C语言中也适用。

根据驼峰命名法,标识符由多个单词组成,每个单词的首字母大写,其他字母小写,并将单词连接在一起。

例如,"studentName"、"maxValue"等。

3.3 避免使用缩写尽量避免使用缩写,因为缩写可能会导致代码的可读性下降。

除非某个缩写广为人知并且被广泛使用,否则建议使用完整的单词作为标识符。

3.4 使用下划线作为单词之间的分隔符在驼峰命名法中,如果标识符由多个单词组成,可以使用下划线作为单词之间的分隔符。

例如,"student_id"、"max_value"等。

3.5 避免过长的标识符虽然C语言没有对标识符长度进行限制,但过长的标识符可能会导致阅读困难。

C语言变量命名规则

C语言变量命名规则

1、严格采用阶梯层次组织程序代码:各层次缩进的分格采用VC的缺省风格,即每层次缩进为4格,括号位于下一行。

要求相匹配的大括号在同一列,对继行则要求再缩进4格。

例如:2、提示信息字符串的位置在程序中需要给出的提示字符串,为了支持多种语言的开发,除了一些给调试用的临时信息外,其他所有的提示信息必须定义在资源中。

3、对变量的定义,尽量位于函数的开始位置。

二、命名规则:1、变量名的命名规则①、变量的命名规则要求用“匈牙利法则”。

即开头字母用变量的类型,其余部分用变量的英文意思或其英文意思的缩写,尽量避免用中文的拼音,要求单词的第一个字母应大写。

即:变量名=变量类型+变量的英文意思(或缩写)对非通用的变量,在定义时加入注释说明,变量定义尽量可能放在函数的开始处。

见下表:bool(BOOL) 用b开头bIsParentbyte(BYTE) 用by开头byFlagshort(int) 用n开头nStepCountlong(LONG) 用l开头lSumchar(CHAR) 用c开头cCountfloat(FLOAT) 用f开头fAvgdouble(DOUBLE) 用d开头dDetavoid(VOID) 用v开头vVariantunsigned int(WORD)用w开头wCountunsigned long(DWORD) 用dw开头dwBroadHANDLE(HINSTANCE)用h开头hHandleDWORD 用dw开头dwWordLPCSTR(LPCTSTR) 用str开头strString用0结尾的字符串用sz开头szFileName对未给出的变量类型要求提出并给出命名建议给技术委员会。

②、指针变量命名的基本原则为:对一重指针变量的基本原则为:“p”+变量类型前缀+命名如一个float*型应该表示为pfStat对多重指针变量的基本规则为:二重指针:三重指针:......③、全局变量用g_开头,如一个全局的长型变量定义为g_lFailCount,即:变量名=g_+变量类型+变量的英文意思(或缩写)④、静态变量用s_开头,如一个静态的指针变量定义为s_plPerv_Inst,即:变量名=s_+变量类型+变量的英文意思(或缩写)⑤、成员变量用m_开头,如一个长型成员变量定义为m_lCount;即:变量名=m_+变量类型+变量的英文意思(或缩写)⑥、对枚举类型(enum)中的变量,要求用枚举变量或其缩写做前缀。

c语言变量命名规则的注意事项 -回复

c语言变量命名规则的注意事项 -回复

c语言变量命名规则的注意事项-回复C语言是一种广泛应用的高级编程语言。

在使用C语言编写程序时,变量是不可或缺的部分。

变量在C语言中起着存储和操作数据的作用。

因此,在命名变量时,遵循一定的规则和注意事项非常重要。

本文将详细介绍C 语言变量命名规则的注意事项,并逐步回答相关问题。

C语言变量命名规则的注意事项可以总结如下:1. 变量名由字母、数字和下划线组成,且不能以数字开头。

2. 变量名区分大小写,例如"count"和"Count"是两个不同的变量。

3. 变量名应具有描述性、易于理解的特点,以便于代码的可读性和维护性。

4. 变量名不得与C语言的关键字重复,例如"if"、"for"和"while"等。

5. 变量名尽量避免使用过于简单或过于复杂的命名,以确保代码的可读性和易于理解。

6. 变量名应尽量减少使用缩写,以免引起误解。

7. 变量名长度通常不超过32个字符,以确保代码的整洁性和可读性。

下面将一步步回答相关问题:问题一:变量名由什么组成?是否有顺序要求?答:变量名由字母、数字和下划线组成,且不能以数字开头。

变量名中的字母可以是大写或小写的,并且区分大小写。

变量名中可以包含多个单词,使用下划线或驼峰命名法来区分单词。

变量名没有严格的顺序要求,但通常建议按照某种规则来命名以提高代码的可读性。

问题二:变量名是否区分大小写?答:是的,C语言中的变量名是区分大小写的。

这意味着"count"和"Count"是两个不同的变量。

因此,在命名变量时需要注意大小写。

问题三:变量名怎样才算具有描述性?答:变量名应具有描述性,以便于代码的理解和维护。

一个具有描述性的变量名能够准确地描述该变量所表示的含义。

例如,使用"age"来表示年龄、"name"来表示姓名等。

C语言变量的命名规则

C语言变量的命名规则

C语言变量的命名规则C语言变量的命名规则C语言是一门通用计算机编程语言,应用广泛。

下面店铺整理了C 语言变量的命名规则,希望对大家有帮助!1)命名应当直观且可以拼读,可望文知意,便于记忆和阅读。

标识符最好采用英文单词或其组合,不允许使用拼音。

程序中的英文单词一般不要太复杂,用词应当准确。

2)命名的长度应当符合“min-length && max-information”原则。

C 是一种简洁的语言, 命名也应该是简洁的。

例如变量名MaxVal 就比MaxValueUntilOverflow 好用。

标识符的长度一般不要过长,较长的单词可通过去掉“元音”形成缩写。

另外,英文词尽量不缩写,特别是非常用专业名词,如果有缩写,在同一系统中对同一单词必须使用相同的表示法,并且注明其意思。

3)当标识符由多个词组成时,每个词的第一个字母大写,其余全部小写。

比如: int CurrentVal;这样的名字看起来比较清晰,远比一长串字符好得多。

4)尽量避免名字中出现数字编号,如Value1,Value2 等,除非逻辑上的确需要编号。

比如驱动开发时为管脚命名,非编号名字反而不好。

初学者总是喜欢用带编号的变量名或函数名,这样子看上去很简单方便,但其实是一颗颗定时炸弹。

这个习惯初学者一定要改过来。

5)对在多个文件之间共同使用的全局变量或函数要加范围限定符(建议使用模块名(缩写)作为范围限定符)。

6)标识符名分为两部分:规范标识符前缀(后缀) + 含义标识。

非全局变量可以不用使用范围限定符前缀。

7)含义标识命名规则,变量命名使用名词性词组,函数命名使用动词性词组。

变量含义标识符构成:目标词+ 动词(的过去分词)+ [状语] + [目的地];8)程序中不得出现仅靠大小写区分的相似的标识符。

例如:int x, X; 变量x 与X 容易混淆void foo(int x); 函数foo 与FOO 容易混淆void FOO(float x);这里还有一个要特别注意的就是1(数字1)和l(小写字母l)之间,0(数字0)和o(小写字母o)之间的.区别。

C语言变量名命名规则

C语言变量名命名规则
C 语言变量名命名规则
一、程序风格: 1、严格采用阶梯层次组织程序代码: 各层次缩进的分格采用 VC 的缺省风格,即每层次缩进为 4 格,括号位于下
一行。 要求相匹配的大括号在同一列,对继行则要求再缩进 4 格。例如: 2、提示信息字符串的位置 在程序中需要给出的提示字符串,为了支持多种语言的开发,除了一些给
实例 bitRXEN bTurnOn ucError cName wMsg nCnt uiLen iVal ulMaxTh LOffset liCount llSum fAngle dRadius eType p_iVal pp_iVal a_chDispName[]
对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术关,系电,通力根1保过据护管生高线产中敷工资设艺料技高试术中卷0资不配料仅置试可技卷以术要解是求决指,吊机对顶组电层在气配进设置行备不继进规电行范保空高护载中高与资中带料资负试料荷卷试下问卷高题总中2体2资,配料而置试且时卷可,调保需控障要试各在验类最;管大对路限设习度备题内进到来行位确调。保整在机使管组其路高在敷中正设资常过料工程试况1卷中下安,与全要过,加度并强工且看作尽护下可1都关能可于地以管缩正路小常高故工中障作资高;料中对试资于卷料继连试电接卷保管破护口坏进处范行理围整高,核中或对资者定料对值试某,卷些审弯异核扁常与度高校固中对定资图盒料纸位试,置卷编.工保写况护复进层杂行防设自腐备动跨与处接装理地置,线高尤弯中其曲资要半料避径试免标卷错高调误等试高,方中要案资求,料技编试术写5、卷交重电保底要气护。设设装管备备置线4高、调动敷中电试作设资气高,技料课中并3术试、件资且中卷管中料拒包试路调试绝含验敷试卷动线方设技作槽案技术,、以术来管及避架系免等统不多启必项动要方高式案中,;资为对料解整试决套卷高启突中动然语过停文程机电中。气高因课中此件资,中料电管试力壁卷高薄电中、气资接设料口备试不进卷严行保等调护问试装题工置,作调合并试理且技利进术用行,管过要线关求敷运电设行力技高保术中护。资装线料置缆试做敷卷到设技准原术确则指灵:导活在。。分对对线于于盒调差处试动,过保当程护不中装同高置电中高压资中回料资路试料交卷试叉技卷时术调,问试应题技采,术用作是金为指属调发隔试电板人机进员一行,变隔需压开要器处在组理事在;前发同掌生一握内线图部槽 纸故内资障,料时强、,电设需回备要路制进须造行同厂外时家部切出电断具源习高高题中中电资资源料料,试试线卷卷缆试切敷验除设报从完告而毕与采,相用要关高进技中行术资检资料查料试和,卷检并主测且要处了保理解护。现装场置设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。

C语言变量命名规则

1、严格采用阶梯层次组织程序代码:各层次缩进的分格采用VC的缺省风格,即每层次缩进为4格,括号位于下一行。

要求相匹配的大括号在同一列,对继行则要求再缩进4格。

例如:2、提示信息字符串的位置在程序中需要给出的提示字符串,为了支持多种语言的开发,除了一些给调试用的临时信息外,其他所有的提示信息必须定义在资源中。

3、对变量的定义,尽量位于函数的开始位置。

二、命名规则:1、变量名的命名规则①、变量的命名规则要求用匈牙利法则”即开头字母用变量的类型,其余部分用变量的英文意思或其英文意思的缩写,尽量避免用中文的拼音,要求单词的第一个字母应大写。

即: 变量名=变量类型+变量的英文意思(或缩写)对非通用的变量,在定义时加入注释说明,变量定义尽量可能放在函数的开始处。

见下表:bool(BOOL)用b开头bIsParentbyte(BYTE)用by开头byFlagshort(i nt)用n开头n StepCo untIon g(LONG)用1开头lSumchar(CHAR)用c开头cCo untfloat(FLOAT)用f开头fAvgdouble(DOUBLE) 用d 开头dDetavoid(VOID)用v开头vVaria ntun sig ned int( WORD) 用w开头wCo untun sig ned Ion g(DWORD)用dw开头dwBroadHANDLE(HINSTANCE ) 用h开头hHa ndleDWORD用dw开头dwWordLPCSTR(LPCTSTR) 用str 开头strString用0结尾的字符串用sz开头szFileName对未给出的变量类型要求提出并给出命名建议给技术委员会。

②、指针变量命名的基本原则为:对一重指针变量的基本原则为:“ p”变量类型前缀+命名如一个float*型应该表示为pfStat对多重指针变量的基本规则为:二重指针:“ pp”变量类型前缀+命名三重指针:“ ppp”变量类型前缀+命名③、全局变量用g_开头,如一个全局的长型变量定义为g」FailCount,即:变量名=g_+变量类型+变量的英文意思(或缩写)④、静态变量用s_开头,如一个静态的指针变量定义为s_plPerv_ In st, 即: 变量名=s_+变量类型+变量的英文意思(或缩写)⑤、成员变量用m_开头,如一个长型成员变量定义为m」Count;即:变量名=m_+变量类型+变量的英文意思(或缩写)⑥、对枚举类型(enum )中的变量,要求用枚举变量或其缩写做前缀。

C语言变量名命名规则

给调试用的临时信息外,其他所有的提示信息必须定义在资源中。 3、对变量的定义,尽量位于函数的开始位置。
二、命名规则:
1、变量名的命名规则
①、变量的命名规则要求用“匈牙利法则”。即开头字母用变量的类型,
其余部分用变量的英文意思或其英文意思的缩写,尽量避免用中文的拼音,要求
单词的第一个字母应大写。
即:
变量名=变量类型+变量的英文意思(或缩写)
====//
//
功能:
从一个 String
中删除另一个
String。
//
参数:
strByDelete,strToDelete
//
(入口)
strByDelete:
被删除的字符串
(原来的字符串)
//
(出口)
strToDelete:
要从上个字符串
中删除的字符串。
//
返回:
找到并删除返回 1,否则返回 0。(对返回
于 8 个字母。
例如:
long
cmGetDeviceCount(……);
3、函数参数规范:
①、
参数名称的命名参照变量命名规范。
②、
为了提高程序的运行效率,减少参数占用的堆栈,传递大
结构的参数,一律采用指针或引用方式传递。
③、
为了便于其他程序员识别某个指针参数是入口参数还是出
口参数,同时便于编译器检查错误,应该在入口参数前加入 const 标志。
③、
在注释中应该详细说明函数的主要实现思路、特别要注明
自己的一些想法,如果有必要则应该写明对想法产生的来由。对一些模仿的函数
应该注释上函数的出处。
④、
在注释中详细注明函数的适当调用方法,对于返回值的处

C语言变量命名规则

1、严格采用阶梯层次组织程序代码:各层次缩进的分格采用VC的缺省风格,即每层次缩进为4格,括号位于下一行。

要求相匹配的大括号在同一列,对继行则要求再缩进4格。

例如:2、提示信息字符串的位置在程序中需要给出的提示字符串,为了支持多种语言的开发,除了一些给调试用的临时信息外,其他所有的提示信息必须定义在资源中。

3、对变量的定义,尽量位于函数的开始位置。

二、命名规则:1、变量名的命名规则①、变量的命名规则要求用“匈牙利法则”。

即开头字母用变量的类型,其余部分用变量的英文意思或其英文意思的缩写,尽量避免用中文的拼音,要求单词的第一个字母应大写。

即:变量名=变量类型+变量的英文意思(或缩写)对非通用的变量,在定义时加入注释说明,变量定义尽量可能放在函数的开始处。

见下表:bool(BOOL) 用b开头bIsParentbyte(BYTE) 用by开头byFlagshort(int) 用n开头nStepCountlong(LONG) 用l开头lSumchar(CHAR) 用c开头cCountfloat(FLOAT) 用f开头fAvgdouble(DOUBLE) 用d开头dDetavoid(VOID) 用v开头vVariantunsigned int(WORD)用w开头wCountunsigned long(DWORD) 用dw开头dwBroadHANDLE(HINSTANCE)用h开头hHandleDWORD 用dw开头dwWordLPCSTR(LPCTSTR) 用str开头strString用0结尾的字符串用sz开头szFileName对未给出的变量类型要求提出并给出命名建议给技术委员会。

②、指针变量命名的基本原则为:对一重指针变量的基本原则为:“p”+变量类型前缀+命名如一个float*型应该表示为pfStat对多重指针变量的基本规则为:二重指针:“pp”+变量类型前缀+命名三重指针:“ppp”+变量类型前缀+命名......③、全局变量用g_开头,如一个全局的长型变量定义为g_lFailCount,即:变量名=g_+变量类型+变量的英文意思(或缩写)④、静态变量用s_开头,如一个静态的指针变量定义为s_plPerv_Inst,即:变量名=s_+变量类型+变量的英文意思(或缩写)⑤、成员变量用m_开头,如一个长型成员变量定义为m_lCount;即:变量名=m_+变量类型+变量的英文意思(或缩写)⑥、对枚举类型(enum)中的变量,要求用枚举变量或其缩写做前缀。

单片机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. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

匈牙利命名法是微软推广的一种关于变量、函数、对象、前缀、宏定义等各种类型的符号的命名规范。

匈牙利命名法的主要思想是:在变量和函数名中加入前缀以增进人们对程序的理解。

它是由微软内部的一个匈牙利人发起使用的,结果它在微软内部逐渐流行起来,并且推广给了全世界的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 消息**************************************************************************变量的命名:应用匈牙利表示法,变量可用上表中的前缀代码来表示。

另外,当一个变量是由一个或几个子名构成时,每一个子名都要以大写字母开头。

相关文档
最新文档