LOWORD()接收DWORD(unsigned long)但WPARAM是UINT_PTR(unsigned int)

时间:2014-05-09 19:58:30

标签: c++ c

因为long比int宽,给出unsigned long的低阶应该返回大于unsigned int的低阶的东西。

为什么函数仍然知道参数的低阶是什么?在这种情况下,它是否分析给定的DWORD类型被理解为最大值?

1 个答案:

答案 0 :(得分:1)

LOWORD()没有收到DWORD,它会将其强制转换为 DWORD_PTR

DWORD_PTR UINT_PTR 的大小相同。 (32位或64位,具体取决于操作系统架构)。