C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Глупый вопрос, но жизненно необходимый
Slader
Отправлено: 05.02.2005, 13:09


Ученик-кочегар

Группа: Участник
Сообщений: 27



Вопрос действительно глупый и где-то даже тривиальный: есть переменная, в которой содержится некий адрес. Мне нужно значение этой переменной присвоить указателю. Изначально переменную указателем сделать нельзя. Просто так присвоить не получаетсяя — компилятор извещает о несоответствии типов. Если же делать приведение типа (unsigned long) к (unsigned long *), как того требует компилятор, значение указателя оказывается 0. И как здесь быть?
HKarel
Отправлено: 05.02.2005, 19:10


Не зарегистрирован







Попробуй так:
CODE

ULONG  ul = какое-то значение;
ULONG *pul = reinterpret_cast< ULONG * >( ul );

Slader
Отправлено: 06.02.2005, 11:54


Ученик-кочегар

Группа: Участник
Сообщений: 27



Не идет. Результат указателя все равно 1 получается.
Делаю так:
CODE

DWORD data;
DWORD *tmp;

data=...;

tmp=reinterpret_cast< ULONG * >( data );


Если брать не tmp, а *tmp, то компилятор опять же говорит о несоответствии типов.
Slader
Отправлено: 06.02.2005, 12:31


Ученик-кочегар

Группа: Участник
Сообщений: 27



Ошибся. Не шло суммирование указателей. Теперь все наладил, спасибо.

Вернуться в Вопросы программирования в C++Builder