![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите перевести несколько ;строк с С++ на PAS [D6, Win2k]
Antonius © (2002-07-29 12:03:00)Надо перевести след. строки, когда-то давно я умел это делать и сам:) Что-то туплю с порядком выполнения разных ++ :)
writepos-=o; //writepos:=writepos-o; Правильно?
length/=2; // length:=length/2; ?
for (l=0;l<length;l++) *buffer++=buf[(readposl+l)*2]; // Это вообще сказка, мозги заплетаются, ничего не понимаю :)
return length*2; //Result:=length*2 ?
заранее спасибо.
Виктор Щербаков (2002-07-29 12:51:00) [1]Внук © (29.07.02 12:49)
ага :)
Внук (2002-07-29 12:49:00) [2]>>Виктор Щербаков © (29.07.02 12:11)
Только to length-1, вроде?
Antonius (2002-07-29 12:42:00) [3]Это все внутри процедуры:
DWORD CALLBACK stleft(HSTREAM handle, short *buffer, DWORD length, BUFSTUFF *b)
DWORD l; //Переменная L, но с ней все понятно
в принципе, все понял. Спасибо.
Виктор Щербаков (2002-07-29 12:11:00) [4]Перепутал.
for l := 0 to length do
Виктор Щербаков (2002-07-29 12:10:00) [5]Приведи декларации переменных.
Но вообще, что-то вроде
for i := 0 to length do
begin
buffer^ := buf[(readposl + l) * 2];
Inc(buffer)
end;
Result := length * 2;
Exit;