首页 / 知识

关于c ++:具有32位和64位代码的DWORD有多大?

2023-04-13 22:17:00

关于c ++:具有32位和64位代码的DWORD有多大?

How large is a DWORD with 32- and 64-bit code?

在Visual C ++中,DWORD只是一个无符号的长整数,它取决于计算机,平台和SDK。 但是,由于DWORD是一个双字(即2 * 16),因此DWORD在64位体系结构上是否仍是32位?


实际上,在32位计算机上,一个单词是32位,但是DWORD类型是16位过去的遗留物。

为了更容易将程序移植到较新的系统,Microsoft决定所有旧类型都不会更改大小。

您可以在此处找到官方列表:
http://msdn.microsoft.com/en-us/library/aa383751(VS.85).aspx

所有从平台到平台的类型都随着_PTR而从32位过渡到64位而改变(DWORD_PTR在32位Windows上为32位,在64位Windows上为64位)。


它定义为:

1
typedef unsigned long       DWORD;

但是,根据MSDN:

On 32-bit platforms, long is
synonymous with int.

因此,在32位操作系统上,DWORD为32位。 对于64位DWORD,有一个单独的定义:

1
typdef unsigned _int64 DWORD64;

希望能有所帮助。


在所有Windows平台上,否... DWORD为32位。 LONGLONG或LONG64用于64位类型。


平台长整数体系结构有多大

最新内容

相关内容

热门文章

推荐文章

标签云

猜你喜欢