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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Необходимо определить длину каждой строки, определить сколько символив первой и второй строки совпадают http://www.cyberforum.ru/cpp-beginners/thread255522.html
Приветик всем)) Очень нужна помощь. Помогите решить некоторые задачи. 1. Пускай мы имеем массив 5 на 5. Необходимо отсортировать элементы каждой строки в порядке возростания и определить...
C++ Выделить в матрице квадрат, в котором количество разных чисел не меньше K Помогите решить вот такую задачу: Дано N - количество рядов, M - количество столбцов, K - минимальное количество разных чисел на квадрат. Есть участок размером N*M, содержащий разные числа от 1 до... http://www.cyberforum.ru/cpp-beginners/thread255499.html
C++ условие и массив
Ребя тподскажите как делать,чёт я не могу догнать( Подсчитать количество положительных чисел среди чисел m, n, p. Найти сумму элементов, принадлежащих промежутку от А до В (А и В вводятся с...
C++ Возвращаемое значение (класс)
class shtraf { public: struct sh { int vel; char number; sh *next; };
C++ Требуется написать прогу которая преобразуют двоичное число в десятичное http://www.cyberforum.ru/cpp-beginners/thread255477.html
Вообщем я пишу контрольную помогите плиз кто знает с использованием цикла for))) Добавлено через 16 секунд Язык С++
C++ Линейные списки. База данных. Помагите плиз посмотреть в чём ошибки, не могу понять как их исправить. /*База данных компьютерных игр, в которой каждая игра характеризуется названием, годом выхода, ограничением по возрасту и... подробнее

Показать сообщение отдельно
Kastaneda
Форумчанин
Эксперт С++
4653 / 2862 / 228
Регистрация: 12.12.2009
Сообщений: 7,271
Записей в блоге: 2
Завершенные тесты: 1

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

11.03.2011, 17:40. Просмотров 594. Ответов 0
Метки (Все метки)

Всем привет) Что-то туплю сижу, не могу указатель на структуру разыменовать.
Создаю поток:
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 минут
Ну я ж говорю, тупил)) Передавал указатель на локальную переменную, которая после создания потока уничножается)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru