Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.01.24;
Скачать: [xml.tar.bz2];

Вниз

Передать массив как параметр   Найти похожие ветки 

 
Wind001   (2009-12-03 16:05) [0]

Добрый день.
Искал в сети как передачу массива, как параметр, нашел пример, вернее несколько одинаковых примеров.
Но примера реализации не нашел ф-ции не нашел.

Вот сама ф-ция


type  B = array[0..26] of Byte;
.......
var
bm: b;
....
function checkSumm(Bm: B ): Byte;
var i: integer;
   CSumm: Byte;
begin
i:=0;  
CSumm:=0;
 CSumm:=(Bm[0] xor Bm[1]);
 for i:= 1 to 25 do
    CSumm:=(CSumm xor bm[i+1] );
 result:=CSumm;
end;

А вот реализация, которая не работает:

var Mass: array [0..26] of Byte;
...... // тут заполнение массива .....
ShowMwssage(IntToStr(checkSumm(b));
end;

И она не работает.


 
Anatoly Podgoretsky ©   (2009-12-03 16:09) [1]

> Wind001  (03.12.2009 16:05:00)  [0]

Что это означает "не работает"


 
Игорь Шевченко ©   (2009-12-03 16:09) [2]


> И она не работает.


Больно слышать


 
clickmaker ©   (2009-12-03 16:11) [3]

то В, то bm, то Mass, то опять b...

в SysUtils уже определен тип TByteArray

var Mass: TByteArray;
...... // тут заполнение массива .....
ShowMwssage(IntToStr(checkSumm(Mass));

function checkSumm(TByteArray: B): Byte;


 
korneley ©   (2009-12-03 16:32) [4]


> clickmaker ©   (03.12.09 16:11) [3]
> function  checkSumm(TByteArray: B): Byte;

function  checkSumm(B: TByteArray): Byte;
;))


 
Wind001   (2009-12-03 16:40) [5]

Исправляюсь у меня процедура и реализация в разных модулях по этому "b" встретилась два раза. Mass добавлял в уже в форум, для понятности и проглядел в "b" функции.
Сейчас изменил и в реализации и в форуме.

var Mass: array [0..26] of Byte;
begin
...... // тут заполнение массива .....
ShowMwssage(IntToStr(checkSumm(Mass));
end;


Ошибка
[Error] Unit1.pas(217): Incompatible types: "B" and "Array"


 
Wind001   (2009-12-03 16:46) [6]

Спасибо поменял на Mass: TByteArray;всё заработало!!!


 
Anatoly Podgoretsky ©   (2009-12-03 16:48) [7]

> Wind001  (03.12.2009 16:40:05)  [5]

Типы разные, Mass должен быть типа В


 
Германн ©   (2009-12-03 16:49) [8]


> Исправляюсь


> Incompatible types: "B" and "Array"

Исправил называется :)

<telepator>
Пиши так:
type
 TMess = array [0..26] of Byte;
var
 Mess : TMess;

function CheckSum(b: TMess);

Удачи!
</telepator>


 
Wind001   (2009-12-03 17:14) [9]


> Исправил называется :)
>
> <telepator>
> Пиши так:
> type
>  TMess = array [0..26] of Byte;
> var
>  Mess : TMess;
>
> function CheckSum(b: TMess);
>
> Удачи!

Спасибо! Учел на будущее.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2010.01.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.004 c
2-1260087982
Washington
2009-12-06 11:26
2010.01.24
AlphaControls, кастомизация скинов


3-1233646344
Sergey2
2009-02-03 10:32
2010.01.24
неверно отображаются записи в таблице


15-1258288584
GrayFace
2009-11-15 15:36
2010.01.24
К теме "Убойная статистика"


2-1259791180
kolj
2009-12-03 00:59
2010.01.24
Проблемы с ClientDataSet


2-1259738939
n_sch
2009-12-02 10:28
2010.01.24
Вопрос по IntraWeb





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский