(DWORD),*(DWORD *)和(DWORD *)之间有什么区别?

时间:2013-11-26 14:02:51

标签: c++ pointers dword

指定的标题问题......

(DWORD)*(DWORD*)(DWORD*)之间的区别是什么?

一个例子:

#include <windows.h>
#define playerpointer 0xABC12375 // example

int main()
{
    DWORD dwPlayerPtr = *(DWORD*)(playerpointer);
}

希望你能帮助我......

1 个答案:

答案 0 :(得分:5)

DWORD是MS-Windows数据类型。它被定义为

typedef unsigned long DWORD

(DWORD*)是一个转换器,用于将值转换为指向DWORD的指针。

*(DWORD*)然后取消引用指向实际DWORD值的指针。

所以,在上面的例子中,

DWORD dwPlayerPtr = *(DWORD*)(playerpointer);

如果我们翻译成“English”,语句就是说,给我一个存储在0xABC12375位置的DWORD变量的值。