c - C中的DWORD和HANDLE类型有什么区别?

标签 c windows

我在 C 中有一个返回类型为 DWORD 的线程,但它随后由 HANDLE 类型指针处理。

这两种类型有什么区别?

我专门为 ANSI C 问这个问题。

没错,DWORDuint类型,HANDLEPVOID,C允许直接强制转换DWORDHANDLE。但是这些类型有什么不同吗?或者我可以简单地说它们是一样的吗?

这是一个在讨论中被问到的问题。我想知道正确答案是什么。

最佳答案

Win32:

  • DWORD 32 位无符号长型
  • HANDLE void *(32 位指针)

Win64

  • DWORD 32 位无符号长型
  • HANDLE void *(64 位指针)

不要只是假设你可以将一个转换为另一个。它适用于 Win32 并在您将其移植到 Win64 时中断。

关于c - C中的DWORD和HANDLE类型有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2431978/

相关文章:

c - c语言中的数组和函数

c - 使用字符串键实现Hashtable插入问题

c - C 中的 fseek() 出现问题

c - 从多个线程读取数组时要注意什么?

java - 从 java 设置 Windows XP 中网络接口(interface)的 IP 地址

python - Windows 10 上来自 Python 的 Pip.exe

c - 为什么我们不能从 C 中的函数返回多个值?请问原因?

c++ - WinAPI 鼠标单击无法正常工作

windows - 无法在 Windows 上从/usr/local/ssl/openssl.cnf 加载配置信息

c++ - WM_TIMER 在 ATL ActiveX 控件中突然停止