在Visual C++中,DWORD只是与机器、平台和SDK有关的无符号长整型。但是,由于DWORD是双字(即2 * 16位),在64位架构上,DWORD仍然是32位吗?
实际上,在32位计算机上,一个字是32位,但DWORD类型是16位时代的剩余物。
为了更容易地将程序移植到新系统,Microsoft决定所有旧类型的大小都不会改变。
您可以在此处找到官方列表: http://msdn.microsoft.com/en-us/library/aa383751(VS.85).aspx
所有与从32位到64位过渡有关的平台相关类型都以_PTR结尾(例如,DWORD_PTR在32位Windows上为32位,在64位Windows上为64位)。
DWORD
。 - jrh它的定义为:
typedef unsigned long DWORD;
然而根据MSDN:
在32位平台上,long与int是同义词。
因此,在32位操作系统上,DWORD是32位的。对于64位DWORD,有一个单独的定义:
typdef unsigned _int64 DWORD64;
希望这可以帮到你。
没有统一的位数描述符。在所有 Windows 平台上,DWORD 都是 32 位。LONGLONG 或 LONG64 用于 64 位类型。
注:该段内容涉及 IT 技术领域。
DWORD
这个类型定义非常与 Windows 相关。 - rubenvbDWORD
而不是像 QBYTE
或 DUBWD
这样的其他名称? - AbyxWindows API中定义DWORD的大小如下: