Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.11.2007, 09:06   #1
Димарик
Пользователь
 
Аватар для Димарик
 
Регистрация: 15.06.2007
Сообщений: 40
По умолчанию Invalid pointer operation

Помогите пожалуйста такой вапрос.
приграмма выполняеться по примерно 1 к 10, а то и раньше происходит ошибка в виде сообщения Invalid Pointer operation

Цитата:
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
count_:=0;
try
i:=strtoint(trim(edit1.text));
except
on EConvertError do i:=10;
end;

begin
setlength(mas,i);
for i:=0 to length(mas) do
begin
mas[i]:=random(2);
Application.ProcessMessages;
Edit1.Text:=inttostr(i);
end;
end;
for i:=1 to length(mas) do
begin
case RadioGroup1.ItemIndex of
0: if ((mas[i])=1) and ((mas[i+1])=0) and ((mas[i+2])=1) then count_:=count_+1;
1: if ((mas[i])=0) and ((mas[i+1])=1) and ((mas[i+2])=0) then count_:=count_+1;
2: if ((mas[i])=1) and ((mas[i+1])=1) then count_:=count_+1;
3: if ((mas[i])=0) and ((mas[i+1])=0) then count_:=count_+1;
end;
end;
Memo1.Lines.Add(inttostr(count_));
count_:=0;
end;

end.
Димарик вне форума Ответить с цитированием
Старый 05.11.2007, 09:18   #2
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

Замени length(mas) на High(mas)
length(mas) - показывает число элементов в массиве, а
High(mas) - максимальный индекс.
Например, если setlength(mas,10); то
length(mas) = 10
High(mas) = 9
т.к. индексация динамического массива начинается с нуля

Последний раз редактировалось _Dmitry; 05.11.2007 в 09:23.
_Dmitry вне форума Ответить с цитированием
Старый 05.11.2007, 09:53   #3
Димарик
Пользователь
 
Аватар для Димарик
 
Регистрация: 15.06.2007
Сообщений: 40
По умолчанию

большое cпасибо!
Димарик вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сообщение об ошибке:Cannot perfom this operation on a closed dataset! Tanuska___:) БД в Delphi 1 04.08.2008 17:52
Invalid floating point operation Skytis Помощь студентам 3 07.05.2008 12:16
Ошибка: Invalid value for field... (ADO) Кот из Лета БД в Delphi 5 26.12.2007 14:02
Возникает ошибка Invalid floating point operation Иринкаа Помощь студентам 3 29.11.2007 22:10
Delphi + dll= Invalid Pointer Operator LEKA Общие вопросы Delphi 4 01.05.2007 23:38