鱼C论坛

 找回密码
 立即注册
查看: 31068|回复: 65

[扩展阅读] 第001讲:匈牙利命名法

[复制链接]
发表于 2014-5-3 16:08:29 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
匈牙利命名法


许多 Windows 程序员都使用“匈牙利标记法”作为变量命名约定。这是为了纪念具有传奇色彩的微软程序员 Charles Simonyi。

这种标记法非常简单,即变量名以一个或者多个小写字母开始,这些字母表示变量的数据型态。例如:szCmdLine 中的 sz 代表“以0结尾的字符串(StringZero)”;在 hInstance 和 hPrevInstance 中的 h 前缀表示“句柄(Handle)”;在 iCmdShow 中的 i 前缀表示“整型(Integer)”。

当命名结构变量时,可以用结构名(或者结构名的一种缩写)的小写形式作为变量名称的前缀,或者用作整个变量名。例如:msg 变量是 MSG 型态的结构;wndclass 是 WNDCLASSEX 型态的一个结构;ps 是一个 PAINTSTRUCT 结构,rect 是一个 RECT 结构。

匈牙利表示法能够帮助程序写作者及早发现并避免程序中的错误。由于变量名既描述了变量的作用,又描述了其数据型态,就比较容易避免产生数据型态不合的错误。


下表列出了在本系列视频教程中经常用到的变量名前缀:

前缀数据类型
c char 或 WCHAR 或 TCHAR
by BYTE (无符号字符)
n short(短整型)
i int(整型)
x, y int,表示 x 坐标和 y 坐标
cx, cy int,表示 x 或 y 的长度,c 表示“count”(计数)
B 或 fBOOL(int);f 表示“flag”
wWORD(无符号短整型)
lLONG(长整型)
dwDWORD(无符号长整型)
fn函数
s字符串
sz 以零结束的字符串
h句柄
p指针


评分

参与人数 2荣誉 +6 鱼币 +6 贡献 +4 收起 理由
AO7 + 1 + 1 + 1 鱼C有你更精彩^_^
星龙 + 5 + 5 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-5-3 19:27:27 | 显示全部楼层
第一讲要出了?:loveliness::loveliness::loveliness:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-3 20:24:35 | 显示全部楼层
确实蛮方便的,希望老师多举实例。
已看完第0课
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-4 10:45:50 | 显示全部楼层
支持,刚看完C++,正好要找点新东西学学:lol:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-4 11:39:02 | 显示全部楼层
好{:1_1:}!!!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-4 14:05:19 | 显示全部楼层
http://wenku.baidu.com/link?url=RaRGtLI_XjdLC2XcaCvRiwQNqYyCtOTt32WY5u_5z4DjRxdla37r0MpeD7cDhhIUrQkEQjgvibaRHnjEyTdTLd12JUAyFBTOESavGZMHHE3
有兴趣的可以看一下,表示小宝看不下去,要是有人可总结一下就好了
:titter::titter::titter::titter:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-4 22:56:38 | 显示全部楼层
长知识了,嘿嘿
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-5 10:20:29 | 显示全部楼层
不错,001课已看完。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-10 15:36:17 | 显示全部楼层
酷!!!真酷!!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-10 23:46:22 | 显示全部楼层
总结的好好!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-31 09:27:44 | 显示全部楼层
慢慢来,呵呵。不着急!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-6-12 15:36:26 | 显示全部楼层
以后变量命名,也用这种方式吗,追随经典
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-6-22 12:23:49 | 显示全部楼层
Win32汇编有讲这匈牙利命名。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-21 16:03:50 | 显示全部楼层
的确很好
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-24 15:55:42 | 显示全部楼层
lihai a xuexiele
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-28 15:41:04 | 显示全部楼层
:big  好的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-29 21:26:16 | 显示全部楼层
多谢分享!{:1_1:}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-8-9 22:59:43 | 显示全部楼层
记得之前看过一篇文章说匈牙利命名法已经过时了,现代的代码已经不提供这个方法了,是真的吗?谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-8-20 16:46:52 | 显示全部楼层
已经阅读完毕。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-9-4 09:47:13 | 显示全部楼层
命名,好麻烦呀
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-29 20:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表