gpt4 book ai didi

C++:如何将十六进制 HANDLE 转换为十进制?

转载 作者:太空宇宙 更新时间:2023-11-04 16:15:41 24 4
gpt4 key购买 nike

在c++中,我从另一个函数得到一个HANDLE类型ID,它看起来是一个十六进制,我想把它转换成十进制。

HANDLE id = getCurrentID();
int decimalID = static_cast<int>( id );

但是第二行给出了这个错误:

Cannot convert from 'HANDLE' to 'int'.

这是我第一次遇到HANDLE类型。有人可以帮忙解释一下吗?谢谢。

更新:

我正在使用 Windows XP 和 Visual Studio 2010。

最佳答案

我猜你使用的是 Windows,因为 HANDLE 是 Microsoft 的东西通常使用的名称。

HANDLE 类型是指向对象(未指定类型)的指针,并被传递到其他函数以对该对象执行操作。一般不需要直接操作。

我不确定为什么要将它转换为 int,因为它通常看起来没什么用,但您可以使用 C 风格的转换来完成它,或者 reinterpret_cast 如其他答案中所述。

如果您想了解这些 Microsoft 类型名称背后的真实类型,可以查看 their documentation .

关于C++:如何将十六进制 HANDLE 转换为十进制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23006107/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com