DWORD和DWORD32之间的区别

时间:2013-05-28 14:05:20

标签: c++ types dword

根据Windows Data Type,除了IntSafe.h之外,DWORD和DWORD32都是“32位无符号整数”,另一个是在BaseTsd.h中定义的。使用一个而不是另一个有什么区别或优势?

2 个答案:

答案 0 :(得分:2)

Windows API充满了数十年的C #definetypedef碎片。

你正在看的是一些碎片。也许在某些时候他们考虑过缩放DWORD,而DWORD32不会。{/ p>

但这种希望早已消亡。它们几乎肯定是相同的类型,几乎肯定永远不会变得不相同。

如果您出于某种原因使用名为DWORD16DWORD64的内容,名称DWORD32将适合,或者如果您出于其他原因确实想强调位数在您的DWORD32类型中,该类型可能是更好的主意。否则,选择一个,使用它,然后忽略另一个。

答案 1 :(得分:1)

他们是完全相同的。维护DWORD是为了与数十年的遗留代码向后兼容,并且始终是32位。 DWORD32是相同的数据类型,只是明确指出它是32位。在更新API以支持64位开发时,DWORD32DWORD64被引入的同时引入了DWORD_PTR