匈牙利命名法

许多 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 ,xy int ,表示 x 或 y 的长度 ,c 表示"count"(计数)
B 或 f BOOL (int); f 表示"flag"
w WORD (无符号短整型)
l LONG (长整型)
dw DWORD (无符号长整型)

fn

函数
s 字符串
sz 以零结尾的字符串
h  句柄
p 指针

2. 匈牙利命名法相关推荐

  1. 骆驼命名法,帕斯卡命名法和匈牙利命名法(转)

    一.匈牙利命名法:广泛应用于象Microsoft Windows这样的环境中.       Windows 编程中用到的变量(还包括宏)的命名规则匈牙利命名法,这种命名技术是由一位能干的 Micros ...

  2. 【转】匈牙利命名法(Hungarian Notation)

    http://www.hudong.com/wiki/%E5%8C%88%E7%89%99%E5%88%A9%E5%91%BD%E5%90%8D%E6%B3%95 匈牙利命名法 匈牙利命名法是一种编程 ...

  3. c++ 请抛弃匈牙利命名法 - 变量命名代码风格的建议。

    我只针对c++码农们讲,其他语言不了解不过应该大同小异.曾几何时翻开21天学通c++系列等脑残入门书,都以匈牙利命名法示人(DWORD dwXXX, int nXXX, string strXXX). ...

  4. C++编程(一):匈牙利命名法

    匈牙利命名法 许多 Windows 程序员都使用"匈牙利标记法"作为变量命名约定.这是为了纪念具有传奇色彩的微软程序员 Charles Simonyi.这种标记法非常简单,其基本原 ...

  5. mfc编程淘汰了吗_四种基本的编程命名规范(匈牙利命名法、驼峰式命名法、帕斯卡命名法、下划线命名法)...

    匈牙利命名法 匈牙利命名法是早期的规范,由微软的一个匈牙利人发明的,是 IDE 还十分智障的年代的产物.那个年代,当代码量很多的时候,想要确定一个变量的类型是很麻烦的,不像现在 IDE 都会给提示,所 ...

  6. 匈牙利命名法、骆驼命名法、帕斯卡(pascal)命名法 C#命名规范

    一.匈牙利命名法:广泛应用于象Microsoft Windows这样的环境中. Windows 编程中用到的变量(还包括宏)的命名规则匈牙利命名法,这种命名技术是由一位能干的 Microsoft 程序 ...

  7. [摘抄] 匈牙利命名法

    匈牙利命名法中常用的小写字母的前缀: 前缀 整数类型 i 整型int l 长整型long int n 短整型short int w Word dw Double Word h Handle(句柄本身其 ...

  8. PHP书写规范 匈牙利命名法+驼峰法命名

    2019独角兽企业重金招聘Python工程师标准>>> PHP书写规范 PHP Coding Standard 变量命名规范这里感觉 打算采用 匈牙利命名法+驼峰法命名,因为 PHP ...

  9. 匈牙利命名法鼻祖---查尔斯·西蒙尼

    生平简介 1948年9月10日,查尔斯•西蒙尼(Charles Simonyi)出生于匈牙利布达佩斯.上高中时,他开始接触计算机和编程,父亲安排他给一名从事计算机工作的工程师当助手,当时计算机在匈牙利 ...

  10. 匈牙利命名法、驼峰式命名法、帕斯卡命名法

    匈牙利命名法.驼峰式命名法.帕斯卡命名法 匈牙利命名法 驼峰式命名法 小驼峰式命名法 大驼峰式命名法(帕斯卡命名法) 匈牙利命名法优缺点 优点 缺点 其他 匈牙利命名法 基本原则是:变量名=属性+类型 ...

最新文章

  1. 前端实习生笔试_一道来自美图的实习生前端笔试算法题
  2. 日常生活小技巧 -- UART 回环测试
  3. 统计学习方法第十八章作业:PLSA 概率潜在语义分析算法 代码实现
  4. c语言编辑密码程序,想程序高手求助--用C语言来编辑一个输入密码的程序
  5. 7805输入电流有要求吗_PLC输入输出接线全解析,值得收藏!
  6. linux离线安装redmine_Linux 下一款非常好用的翻译软件
  7. Linux学习之服务器搭建——DHCP服务器
  8. My SQL 学习笔记二
  9. day 7-13 数据库的数据类型
  10. Angular.js示例应用程序
  11. makefile:5: *** missing separator. Stop.
  12. SQL Server 2005 正则表达式使模式匹配和数据提取变得更容易
  13. 在matlab中实现PCA算法
  14. oracle10g配置tns,连接Oracle 10g时ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的SID...
  15. 三星android o测试版,三星美版 Galaxy Note8 N950U 升级安卓8.0测试版固件和教程
  16. win10中如何用鼠标快速切换窗口?
  17. lumion6.0的下载和安装教程
  18. C语言:链表(动态)创建之头插法和尾插法
  19. Skipped,remains conflicted
  20. clustMD r语言_R语言做聚类分析Kmeans时确定类的个数

热门文章

  1. CygWin、MinGw和Msys的区别
  2. JVM内存模型及内存分配
  3. 【CocosBuilder 开发系列之一】cocos2dx使用CocosBuilder(编辑器)完成基础骨骼动画
  4. 中国医师节丨华为IdeaHub用远程诊疗护佑人民健康,为医生减负
  5. android google map v2 获取当前位置,如何在google map v2中获取当前位置信息?
  6. 文本分类和聚类有什么区别
  7. GDT(全局描述表)
  8. 在线ARM仿真器知识(嵌入式系统设计师必备)
  9. 定时任务的corn表达式
  10. dfs python