Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Делфи _ передача массива, как параметр ф-ции

Автор: nedouser 29.12.2006 2:34

Код
........
Buf: array[1..32] of char;    {buffer 32 bit}
.......
BlockRead(OpenFile,Buf,sizeof(Buf),NumRead); считывание блока нетип.файла
GammaCrypt(Passwd,Buf); моя функция,т.е. криптование xor`ом
.........

процедура:

type Bufer=array of char;
procedure GammaCrypt(Key: string; var arr:Bufer);
....
m := Length(Key);
n := Length(Bufer); буфер(массив) пустой!


в общем немогу сообразить как передать массив в функцию...что нетак то??!
зы: сорри за корявый код, программер из меня неважный smile.gif

Автор: мисс_граффити 29.12.2006 7:10

ну как бы это... тип передаваемого и формального параметра должны быть одинаковыми. у тебя Делфи не ругалась?
то есть

Buf: Bufer;
....
SetLength(Buf,32);



И еще. Вот здесь нормально заполняется:
BlockRead(OpenFile,Buf,sizeof(Buf),NumRead);
?

Автор: nedouser 1.01.2007 15:25

да ступил, поставил одинаковые типы заработало, странно что неругалась =)
спасибо, мадам =)