about wParam and lParam

本文追溯了Windows API中wParam和lParam参数的历史,从Win16系统的16位和32位整型变量到Win32API中的统一32位变量,解释了这两个参数命名的由来及其在API演化过程中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这两个是Win16系统遗留下来的产物了
在Win16API中WndProc有两个参数
一个是WORD类型的16位整型变量
另一个是LONG类型的32位整型变量,
因此根据匈牙利命名法,16位的变量就被命名为wParam,
而32位的变量就被命名为lParam。

到了Win32API中,原来的16位变量也被扩展为32位,
因此wParam和lParam的大小完全相同。
在Win32API的早期,为了保证和Win16API的代码可移植性
MS定义了WPARAM和LPARAM两个宏
当时保留了w前缀的原因一方面是由于WPARAM宏也已W开头,
还有也因为要提醒程序员注意到可移植性,当然到了现在
Win16早已退出历史舞台,这个前缀也就约定俗成的沿用下来了。

转载于:https://www.cnblogs.com/jonnyyu/archive/2005/08/23/220525.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值