Воскресенье, 05.01.2025
Pascal 4 All
[ · Новые сообщения · Участники · Правила форума · Поиск · RSS ]

 

  • Страница 1 из 1
  • 1
Модератор форума: Seqular, Pavel  

Invalid breakpoints encounter
TexnarДата: Воскресенье, 22.03.2009, 02:34 | Сообщение # 1
Знакомый
Группа: Пользователи
Сообщений: 16
Репутация: 1
Замечания: 0%
Статус: Offline
Собственно сабж. При каких условиях возникает данная ошибка? Причем данное сообщение об ошибки выскакивает только в одной из процедур. Давно не сталкивался с этим. Как бороться?
 
SeqularДата: Воскресенье, 22.03.2009, 10:22 | Сообщение # 2
Хранитель
Группа: Администраторы
Сообщений: 859
Репутация: 35
Статус: Offline
Texnar, А можно код в студию? ) чтобы лучше можно было объяснить происхождение ошибки

Поддерживаю также проект сообщество молодых сисадминов
 
TexnarДата: Воскресенье, 22.03.2009, 22:14 | Сообщение # 3
Знакомый
Группа: Пользователи
Сообщений: 16
Репутация: 1
Замечания: 0%
Статус: Offline
Code
procedure zapisprefix(var mas_zna: zna; var firma_file,ks,prefix:text; var i:integer; var vrem:mvrem; var comp:mcomp);
var
f_k,firma,firmatemp: str;
simvol: sim;
str_zna,temp,number,str_zna2,tempcomp: str;
stime: string[10];
code,k,z,b,qwerty: integer;
time: longint;
prov,prov2,prov3,prov99: boolean;
begin
prov3:=false;
prov2:=false;
reset(prefix);
str_zna:='';
str_zna2:='';

if mas_zna[3]<>'0' then

begin
f_k:=mas_zna[1]+','+mas_zna[2];
stime:=mas_zna[3];
val(stime,time,code);

for z:=1 to 3 do

begin
write(firma_file,mas_zna[z]+',');
mas_zna[z]:='';
end;

writeln(firma_file);
str_zna:=f_k;
firma:=copy(str_zna,1,pos(',',str_zna));
delete(str_zna,1,pos(',',str_zna));
str_zna2:=str_zna;

prov99:=false;

while (not length(str_zna2)=0) or (prov99=true) do

begin

while not seekeof(prefix) do

begin
simvol:='';
temp:='';
number:='';
tempcomp:='';

while simvol<>',' do

begin
read(prefix,simvol);
tempcomp:=tempcomp+simvol;
end;

simvol:='';

while simvol<>',' do

begin
read(prefix,simvol);
temp:=temp+simvol;
end;

delete(temp,pos(',',temp),1);

if (firma=tempcomp) and (str_zna2=temp) then

begin
simvol:='';

while simvol<>',' do

begin
read(prefix,simvol);
number:=number+simvol;
end;

delete(number,pos(',',number),1);
str_zna:=number;
readln(prefix);
prov2:=true;
prov99:=true;
end

else

begin

if (temp=str_zna2) and (prov2=false) and (prov3=false) then

begin
simvol:='';

while simvol<>',' do

begin
read(prefix,simvol);
number:=number+simvol;
end;

delete(number,pos(',',number),1);
str_zna:=number;
readln(prefix);
prov3:=true;
prov99:=true;
end

else

begin
readln(prefix);
end;

end;
end;
qwerty:=length(str_zna2);
delete(str_zna2,qwerty,1);
end;

insert(firma,str_zna,1);

prov:=false;

for k:=1 to N do

begin

if comp[k]=str_zna then

begin
vrem[k]:=vrem[k]+time;
prov:=true
end;

end;

if (prov=false) then

begin
comp[i]:=str_zna;
vrem[i]:=time;
str_zna:='';
i:=i+1;
end;

end;

end;

}
Вот в данной процедуре возникает. Не помню из-за чего возникает она.


Сообщение отредактировал Seqular - Воскресенье, 22.03.2009, 22:46
 
SeqularДата: Воскресенье, 22.03.2009, 22:47 | Сообщение # 4
Хранитель
Группа: Администраторы
Сообщений: 859
Репутация: 35
Статус: Offline
Сама по себе эта процедура немного скажет.. Полный код был бы лучше с описанием типов данных, так как остается лишь гадать что за типы: zna, mvrem и т.д...

Поддерживаю также проект сообщество молодых сисадминов
 
TexnarДата: Понедельник, 23.03.2009, 02:28 | Сообщение # 5
Знакомый
Группа: Пользователи
Сообщений: 16
Репутация: 1
Замечания: 0%
Статус: Offline
http://slil.ru/27322155

Ну как бы вот. Только не обращайте внимание на не которые нелепости в данной программе. Писалась очень быстро, т.к. нужна была срочна одна из частей программы, а теперь пока не доходят руки привести в нормальный вид

 
SeqularДата: Понедельник, 23.03.2009, 14:39 | Сообщение # 6
Хранитель
Группа: Администраторы
Сообщений: 859
Репутация: 35
Статус: Offline
Texnar, Не пойдет ) Кидай все, что связано с этой программой. Так как там для проверки нужно скармливать кое-какие файлы. А их у меня нет. Понимаешь? Мне нужно все, чтобы я смог вызвать такую же ошибку у себя и исправить ее....
А насчет слабых мест.. .Их действительно много ) Не помешало бы кое-где подлатать


Поддерживаю также проект сообщество молодых сисадминов
 
TexnarДата: Четверг, 26.03.2009, 02:38 | Сообщение # 7
Знакомый
Группа: Пользователи
Сообщений: 16
Репутация: 1
Замечания: 0%
Статус: Offline
мда тогда лучше сам как нибудь разберусь. Входные файлы огромны) Спасибо)
 
SeqularДата: Пятница, 27.03.2009, 10:33 | Сообщение # 8
Хранитель
Группа: Администраторы
Сообщений: 859
Репутация: 35
Статус: Offline
Ну целиком же не обязательно кидать. Хотябы фрагмент... Запусти программу в режиме отладки, поставь breakpoint в проблемном месте, просмотри, какие переменные сбоят... Ну в общем стандартная процедура поиска ошибки.

Поддерживаю также проект сообщество молодых сисадминов
 
  • Страница 1 из 1
  • 1
Поиск:

Copyright MyCorp © 2025
Используются технологии uCoz
javascript:;" rel="nofollow" onclick="loginPopupForm(); return false;