Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.08.15;
Скачать: CL | DM;

Вниз

отладчик на некоторые строчки не попадает........   Найти похожие ветки 

 
MIg ©   (2002-07-19 17:23) [0]

Ставлю на строчку метку для отладки. А вместо галочки крестик появляется. Оказывается это в нескольких местах так. Синих точек нету. Две процедура вооще не подхватываются (синих точек вообще нету).
А так вот как выглядит:

. t:=tim*2;
Kka:=0; //и эту строчку программа проскакивает
. p:=SputCharac_g[2,5]*(1-SputCharac_g[2,6]*SputCharac_g[2,6]);
. u:=SputCharac_g[perem1,7]*pi/180+t*2*Pi/period;

Идут сплошные глюки, т.к. переменные не присваиваются и вообще......

Такое у меня было как-то. Но тогда я из текстового файла переносил части программы. Пришлось все равно все перенабирать.
А здесь я из своей же программы копировал. В одном месте
. Kka:=0; точка есть (оттуда я и копировал эту строчку)
А в другом
Kka:=0; нету и ничего не присваивается.......

Подскажите пожалуйста в чем и где причину искать.
Спасибо.


 
Виктор Щербаков ©   (2002-07-19 17:32) [1]

Хм...
А может компилятор подсказки тебе выдавал о неиспользуемых значениях переменных?
Если это так, то будь уверен, оптимизатор (если он включен) выкинул при компиляции ненужный код.


 
drpass ©   (2002-07-20 01:24) [2]

Даже если и не выдавал - при включенной оптимизации компилятор основательно вычищает код - отсюда и невозможность попасть на эту строчку. В готовой программе ее просто нет. Выключи оптимизацию (project-options-compiler-optimization) и перекомпилируй программу через команду Build.


 
NailMan ©   (2002-07-20 01:55) [3]

Скорее всего, в этот кусок программы программа никуда ек попадет, и компилятор выводит зеленый breakpoint с крестиком.
Такое может быть если приведеный тобой код находится в процедуре, которая никогда не вызывается или в нулевом цикле, например:
A:=0;
...
For i:=1 to a do
begin
....
end;

Вообще-то о нулевых циклах кромпилятор должен ругаться.

Так что смотри вызываются ли твои процедуры вообще и пройди программы пошагово(F8).


 
MIg ©   (2002-07-21 04:47) [4]

В этом-то и все чудеса, что логика тут совсем не помогает.....
Циклов в этой процедуре вообще нету. Там три действия и все..
А по F8 эту строчку перескакивает и ничего не присваивается.....

Проюовал даже так:
Есть работающая процедура
Procedure Umn_matr(........);
begin
. *********
. *********
end;

и там, где точки не стоят
Procedure Vec(........);
begin
*********
*********
end;

Не работающую я закомментировал и вместо нее поставил предыдущую и название поменял. И что?......
Procedure Umn_matr1(........);
begin
*********
*********
end;

Точки исчезли!?!?!?!?........
На Procedure Umn_matr(........); точки есть
А Procedure Umn_matr1(........); нету.......Процедуры абсолютно одинаковые...........

А со строчками примерно то же самое.....
if Radiobutton1.Checked=true then
begin
. t:=tim*2;
. Kka:=0; //строчка работает
. p:=SputCharac_g[2,5]*(1-SputCharac_g[2,6]*SputCharac_g[2,6]);
. u:=SputCharac_g[perem1,7]*pi/180+t*2*Pi/period;
end;
if Radiobutton2.Checked=true then
begin
. t:=tim*2;
Kka:=0; // эту строчку программа проскакивает
. p:=SputCharac_g[2,5]*(1-SputCharac_g[2,6]*SputCharac_g[2,6]);
. u:=SputCharac_g[perem1,7]*pi/180+t*2*Pi/period;
end;

Я всего лишь первый код скопировал и заменил Radiobutton1 на Radiobutton2....И точка пропала...Бред какой-то......

На работе один знакомый, который на Buildere программирует, сказал, что у него такое тоже бывает и сам не знает от чего. Он закрывает Builder, заходит опять и все компиллирует заново. И, говорит, глюк исчезает.
Попробую-ка я оптимизацию убрать......





 
NailMan ©   (2002-07-21 04:59) [5]

Мда...бывает...
У меня похожие глюки были когда я использовал файловые хандлеры типа F:textfile...File of; после выхода из процедуры выдавался AV. Перешел на Integer-хандлеры и бреда не стало.

Но такие глюки как у тебя я встречаю впервые...


 
MIg ©   (2002-07-22 11:22) [6]

Отключил я оптимизацию и все перекомпиллировал. Внутри программы все стало нормально, т.е. переменные вроде присваиваются....
Но в двух процедурах все равно точек нет.
Покопаюсь еще....

Главное прогресс есть. С мертвой точки сдвинулся...

Спасибо.



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

Текущий архив: 2002.08.15;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
14-48253
Эндрю2
2002-07-17 21:01
2002.08.15
Поиск по DOC файлам


14-48277
Alexsey
2002-07-21 15:08
2002.08.15
Очень нужна помощь от вас........


3-47945
Sword
2002-07-25 18:57
2002.08.15
DBGrid


1-48179
Igorek
2002-08-02 13:02
2002.08.15
Еще раз про class of


1-48120
Proton
2002-07-30 19:30
2002.08.15
RoterPro