匈牙利表示法 - [MFC-不就笨点,笑我是猪!]

 在window编程中经常会见到一些诸如LPSTR,PSTR,LPSZ诸如此类的东东,怎么解释呢?答:匈牙利表示法(Charles Simonyi创建)。

举个例子:

LPSTR=L+P+STR=long+pointer+string=32位字符串类型指针

PSTR=P+STR=pointer+string=字符串类型指针

LPSZ=L+P+SZ=long+pointer+以/0结尾的字符串=32位字符串类型指针(以NULL结尾)

(也可简单理解LP为32位的指针)

这种代码编写方式的好处显而易见:易学、好记、代码通用性强、可读性好……

不说了,整理一些常用的东东吧。

常用匈牙利表示法前缀的类型及其说明
 ──────────────────
  前缀         类型     说明
 ──────────────────
  ch           char       字符
 ──────────────────
  b            BOOL     布尔值
 ──────────────────
  n(I)         int       整数
 ──────────────────
  w            WORD    16位无符号数
 ──────────────────
  l            LONG      32位有符号数
 ──────────────────
  dw        DWORD   32位无符号数
 ──────────────────
  lpsz      LPTSTR  指向字符串的32位指针
 ──────────────────
  h          Handle     窗口对象句柄

 

一些常见的前缀:

c      Char字符
by     BYTE字节(无符号字符)
n      Short短整数和整数(表示一个数)
i       int整数
x, y   Short短整数(通常用于x坐标和y坐标)
cx, cy short短整数(通常用于表示x和y的长度;c表示计数)
b      BOOL(整数)
w      UINT(无符号整数)和WORD(无符号字)
l       LONG(长整数)

dw    DWORD(无符号长整数)
fn     函数指针
s      字符串
sz,str 以一个字节的0(空值)终止的字符串
lp     32位指针
h      编号 (常用于表示Windows对象)
msg    消息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值