Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Integer & Dword +WINAPI [D5]


Nick-From ©   (2002-11-05 21:23:00) 

Проблема в следующем:
Есть программа рекурсивного вычисления определителя мартицы
Постановка задачи такова, что каждый шаг рекурсии рассчитывается в новом потоке программы, созданном API-функцией: CreateThread
Определитель, как известно может быть <0, >0, =0. Т.е. функция вычисления определителя должна возвращать число со знаком (Integer например).
НО! : тело потока созданного API-функцией: CreateThread должно быть оформлено в виде:
DWORD WINAPI ThreadFunction (LPVOID lpParameter);
Т.Е. возвращает всегда положительный DWORD и возникают косяки типа: 84393785763 в результате выполнения функции
Мастера, подскажите, как тут быть?


demoniada   (2002-11-06 15:04:00) [1]

наскоко я знаю, DWORD определен в С++ как
unsigned long
то есть, Cardinal в Пасквиле...


MBo   (2002-11-06 14:57:00) [2]

Аналогично
dwVar:=Dword(IntVar);


Nick-From   (2002-11-06 14:54:00) [3]

2 MBo
А как integer -> DWord ?


MBo   (2002-11-06 06:14:00) [4]

Ничего не мешает явно привести полученный DWord к Integer
i:=Integer(dwPar);


Gandalf   (2002-11-05 22:09:00) [5]

DWord можно с успехом обозвать Pointer, и ссылаться на любые данные любого типа и размера.


Наверх

Титульная страница Поиск, карта сайта Написать письмо