将负的int值转换为WPARAM会导致奇怪的值

时间:2014-12-05 10:48:10

标签: c++ casting type-conversion

我正在尝试使用PostMessage发送一个int值,但会进行奇怪的转换。

我的整数变量包含类似-491838的值,但是这行

(WPARAM)值返回一个像4294475458这样的值。问题是什么,如何获得正确的值?

1 个答案:

答案 0 :(得分:1)

WPARAM是无符号整数,您将从有符号的负数转换为无符号数。

如果将其强制转换回另一端的int,则它将具有相同的值。