Форум программистов, компьютерный форум CyberForum.ru

Приведение LPVOID* к POINT* - C++

Восстановить пароль Регистрация
 
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4237 / 2770 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
11.03.2011, 17:40     Приведение LPVOID* к POINT* #1
Всем привет) Что-то туплю сижу, не могу указатель на структуру разыменовать.
Создаю поток:
C++
1
CreateThread(NULL, 0, ThreadProc, &point, 0, NULL);
согласну прототипу этой функции 4-ым параметром должен быть LPVOID (кто не знает - это то же самое, что void*), мне нужно передать в поток структуру POINT (там 2 члена x и y, используется для работы с координатами экрана), ну я и передаю &point (point как вы поняли - это та самая структура). Потом в ф-ции потока делаю так:
C++
1
2
3
POINT GradientLine(*((POINT*)point));
GradientLine.x+=390;
GradientLine.y+=190;
Все компилится, но при выполнении вылетает ошибка "нарушение прав доступа 0x........" и указывает на строку:
C++
1
GradientLine.x+=390;
Пробовал сделать по-всякому, но рузультат тот же. Может я по запарке что-то не то делаю?
Могу реализовать все это дело через глобальную переменную, но не нравится мне этот вариант.

Добавлено через 18 минут
Ну я ж говорю, тупил)) Передавал указатель на локальную переменную, которая после создания потока уничножается)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2011, 17:40     Приведение LPVOID* к POINT*
Посмотрите здесь:

LPVOID и поток C++
C++ приведение типа
C++ Преобразование LPVOID в int
C++ Приведение LPVOID к классу "непостоянной" величины
Немогу осуществить int => LPVOID => int C++
Приведение типов C++
C++ Приведение указателей
Приведение типов C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 17:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru