Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
skaa
Зарегистрирован: 22.12.2002 Сообщения: 10 Откуда: Skokie, IL
|
Добавлено: Чт Авг 15 2002 21:15 Заголовок сообщения: C++, Delphi |
|
|
Помогите перевести с C++ на Delphi:
int qcsf; char *pRes; HGLOBAL hMem;
qcsf=4000000; hMem=GlobalAlloc(GPTR,qcsf+1); if(hMem!=NULL) { pRes=(char*)GlobalLock(hMem); if(pRes!=NULL) pRes[qcsf]='!'; else ShowMessage("GlobalLock?"); GlobalUnlock(hMem); GlobalFree(hMem); } else ShowMessage("GlobalAlloc?"); |
|
Вернуться к началу |
|
|
Борис Гость
|
Добавлено: Сб Авг 17 2002 18:15 Заголовок сообщения: Re: C++, Delphi |
|
|
Если Delphi -- это TurboPascal+, то примерно так (имена процедур и функций могут отличаться в связи со спецификой Delphi):
это
>int qcsf; >char *pRes; >HGLOBAL hMem;
все заменяем на: type pres_arr=array [0..4000000] of char; var qcsf: longint; pres: ^pres_arr; hmem: pointer;
>qcsf=4000000; заменяем на qcsf:=4000000; >hMem=GlobalAlloc(GPTR,qcsf+1); заменяем на getmem(hmem, qcsf+1); >if(hMem!=NULL) заменяем на if hmem nil then >{ заменяем на begin >pRes=(char*)GlobalLock(hMem); заменяем на pres:=hmem; >if(pRes!=NULL) заменяем на if pres nil then >pRes[qcsf]='!'; заменяем на pRes[qcsf]:='!' (без точки с запятой!) >else не заменяем >ShowMessage("GlobalLock?"); заменяем на какой-нибудь msgbox("GlobalLock?"); >GlobalUnlock(hMem); убираем >GlobalFree(hMem); заменяем на freemem(hmem) >} заменяем на end >else не заменяем >ShowMessage("GlobalAlloc?"); заменяем на какой-нибудь msgbox("GlobalAlloc?");
- Мыкола, ты ведаишь, як прокляты пасклысты наш NULL кличуть? - Нэ. Як? - niiiil. - У, hады, поубывав бы. |
|
Вернуться к началу |
|
|
skaa
Зарегистрирован: 22.12.2002 Сообщения: 10 Откуда: Skokie, IL
|
Добавлено: Вс Авг 18 2002 16:00 Заголовок сообщения: Re: C++, Delphi |
|
|
Спасибо!!! Завтра на работе реализуем. |
|
Вернуться к началу |
|
|
|