c语言函数命名规范
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
竭诚为您提供优质文档/双击可除
c语言函数命名规范
篇一:c语言命名规则
匈牙利命名法是微软推广的一种关于变量、函数、对象、前缀、宏定义等各种类型的符号的
命名规范。
匈牙利命名法的主要思想是:在变量和函数名中加入前缀以增进人们对程序的理
解。
它是由微软内部的一个匈牙利人发起使用的,结果它在微软内部逐渐流行起来,并且推
广给了全世界的windows开发人员。
下面将介绍匈牙利命名法,后面的例子里也会尽量遵守
它和上面的代码风格。
aarray数组
bbool(int)布尔(整数)
byunsignedchar(byte)无符号字符(字节)
cchar字符(字节)
cbcountofbytes字节数
crcolorreferencevalue颜色(参考)值
cxcountofx(short)x的集合(短整数)
dwdwoRd(unsignedlong)双字(无符号长整数)
fFlags(usuallymultiplebitvalues)标志(一般是有多位的数值)
fnFunction函数
g_global全局的
hhandle句柄
iinteger
llong
lplongpointer
m_datamemberofaclass
成员
nshortint
ppointer
sstring
szzeroterminatedstring
符串
tmtextmetric
uunsignedint
ulunsignedlong(ulong)整数长整数长指针一个类的数据短整数指针字符串以0结尾的字文本规则无符号整数无符
号长整数
wwoRd(unsignedshort)无符号短整数
x,yx,ycoordinates(short)坐标值/短整数
vvoid空
有关项目的全局变量用g_开始,类成员变量用m_,局部变量若函数较大则可考虑用l_用以
显示说明其是局部变量。
前缀类型例子
g_全局变量g_servers
c类或者结构体cdocument,cprintinfo
m_成员变量m_pdoc,m_ncustomers
Vc常用前缀列表:
前缀类型描述例子
chchar8位字符chgrade
chtchaR16位unicode类型字符chname
bbool布尔变量benabled
nint整型(其大小由操作系统决定)nlength
nuint无符号整型(其大小由操作系统决定)nlength wwoRd16位无符号整型wpos
llong32位有符号整型loffset
dwdwoRd32位无符号整型dwRange
p*ambientmemorymodelpointer内存模块指针,指针变
量pdoc
lpFaR*长指针lpdoc
lpszlpstR32位字符串指针lpszname
lpszlpcstR32位常量字符串指针lpszname
lpszlpctstR32位unicode类型常量指针lpszname hhandlewindows对象句柄hwnd
lpfn(*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格,括号位于下一行。
要求相匹配的大括号在同一列,对继行则要求再缩进4格。
例如:
2、提示信息字符串的位置
在程序中需要给出的提示字符串,为了支持多种语言的开发,除了一些给调试用的临时信息外,其他所有的提示信息必须定义在资源中。
3、对变量的定义,尽量位于函数的开始位置。
二、命名规则:
1、变量名的命名规则
①、变量的命名规则要求用“匈牙利法则”。
即开头字母用变量的类型,其余部分用变量的英文意思或其英文意思的缩写,尽量避免用中文的拼音,要求单词的第一个字母应
大写。
即:变量名=变量类型+变量的英文意思(或缩写)
对非通用的变量,在定义时加入注释说明,变量定义尽量可能放在函数的开始处。
见下表:
bool(bool)用b开头bisparent
byte(byte)用by开头byFlag
short(int)用n开头nstepco(c语言函数命名规范)unt long(long)用l开头lsum
char(chaR)用c开头ccount
float(Float)用f开头favg
double(double)用d开头ddeta
void(Void)用v开头vVariant
unsignedint(woRd)用w开头wcount
unsignedlong(dwoRd)用dw开头dwbroad
handle(hinstance)用h开头hhandle
dwoRd用dw开头dwword
lpcstR(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)中的变量,要求用枚举变量或其缩写做前缀。
并且要求用大写。
如:enumcmemdays
{
emdays_monday;
emdays_tuesday;
……
};
⑦、对struct、union、class变量的命名要求定义的
类型用大写。
并要加上前缀,其内部变量的命名规则与变量命名规则一致。
结构一般用s开头
如:structscmnpoint
{
intnx;//点的x位置
intny;//点的y位置
};
联合体一般用u开头
如:unionucmlpoint
{
longlx;
longly;
}
类一般用c开头
如:
classccmFpoint
{
public:
floatfpoint;
};
对一般的结构应该定义为类模板,为以后的扩展性考虑
如:
template
classccmtVector3d
{
public:
typex,y,z;
};
⑧、对常量(包括错误的编码)命名,要求常量名用大写,常量名用英文表达其意思。
如:
#definecm_File_not_FoundcmmakehR(0x20b)其中cm表示类别。
⑨、对const的变量要求在变量的命名规则前加入c_,即:c_+变量命名规则;例如:constchar*c_szFilename;
2、函数的命名规范:
函数的命名应该尽量用英文表达出函数完成的功能。
遵循动宾结构的命名法则,函数名中动词在前,并在命名前加入函数的前缀,函数名的长度不得少于8个字母。
例如:
longcmgetdevicecount(……);
3、函数参数规范:
①、参数名称的命名参照变量命名规范。
②、为了提高程序的运行效率,减少参数占用的堆栈,。