![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Integer & Dword +WINAPI [D5]
Nick-From © (2002-11-05 21:22:00)Проблема в следующем:
Есть программа рекурсивного вычисления определителя мартицы
Постановка задачи такова, что каждый шаг рекурсии рассчитывается в новом потоке программы, созданном API-функцией: CreateThread
Определитель, как известно может быть <0, >0, =0. Т.е. функция вычисления определителя должна возвращать число со знаком (Integer например).
НО! : тело потока созданного API-функцией: CreateThread должно быть оформлено в виде:
DWORD WINAPI ThreadFunction (LPVOID lpParameter);
Т.Е. возвращает всегда положительный DWORD и возникают косяки типа: 84393785763 в результате выполнения функции
Мастера, подскажите, как тут быть?
TTCustomDelphiMaster (2002-11-05 21:55:00) [1]var
dw: DWORD;
i: integer;
...
dw := $FFFFFFFF;
i := Integer(dw);
Alex4444444444 (2002-11-05 21:37:00) [2]Integer(...)
Esli budet rugat"sya, to
type MyType = record
case Integer of
0: (DW: TWord);
1: (I: Integer)
end;
Kak mathematic, hochu sprosit": (1) Uvereny li Vy, chto zdes" nuzhny Thread"y, i (2) Uvereny li Vy, chto eto---samyj horoshij (bystryj, nadezhnyj,...) sposob vychisleniya determinantov?