В чем разница между (DWORD), * (DWORD *) и (DWORD *)?

0

Вопрос в названии тоже указан...

Какая разница между (DWORD), *(DWORD*) и (DWORD*)?

Пример:

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

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

Надеюсь, ты поможешь мне...

  • 0
    Пример не относится к вопросу. Какую разницу ты не понимаешь?
  • 3
    Любая приличная книга на C или C ++ должна объяснить это довольно четко - есть удобный список, если у вас его нет.
Показать ещё 2 комментария
Теги:
pointers
dword

1 ответ

5

DWORD - это тип данных MS-Windows. Он определяется как

typedef unsigned long DWORD

(DWORD*) - это приведение для преобразования значения в указатель на DWORD.

*(DWORD*) затем удаляет ссылку на этот указатель на фактическое значение DWORD.

Итак, в вашем примере выше,

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

Если мы переведем на "английский", говорится в заявлении, введите мне значение переменной DWORD, которая хранится в местоположении 0xABC12375.

  • 0
    Ах спасибо !!!
  • 0
    Добро пожаловать.
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню