Forum in READ ONLY mode! All questions and discussions on Discord official server, invite link: https://discord.gg/VxsGzJ7

Совет по отладке скрипта.

Часто задаваемые вопросы
Post Reply
shinma
Expert
Expert
Posts: 505
Joined: 28.04.2011 12:05

Совет по отладке скрипта.

Post by shinma »

Мне очень пригодилось применение функции AddToSystemJournal. Если её выставить везде вдоль текста скрипта. вы можете отследить действия скрипта по сообщениям в системном журнале, и понять где у вас происходит действие которое вы не предполагали.

вот например:

Code: Select all

program povtor;
var
i,n:integer;

procedure easy; 
begin
i:=0;
n:=1;
repeat 
i:=i+1;
AddToSystemJournal('Процедура easy. i= '+inttostr(i));
n:=n+1;
AddToSystemJournal('Процедура easy. n= '+inttostr(n));
until (i=9) or (n=8);
end;

begin
easy;
AddToSystemJournal('Процедура easy выполнена');
end.
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
shinma
Expert
Expert
Posts: 505
Joined: 28.04.2011 12:05

Post by shinma »

ыыыы уделал меня ))) У меня одно оправдание я тока вторую неделю занялся программированием и вдобавок еще учу не паскаль и си, а программирование в стелсе. Жалко только учусь на своих ошибках, а не читаю чужие.)))
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

Vizit0r[SG] (10:32:44 5/05/2011)
ох уж эти изобретатели велосипедов

Vizit0r[SG] (10:33:29 5/05/2011)
фак не читают, потом героически преодолевают сложности и с гордостью об этом пишут :)
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
Beren
Novice
Novice
Posts: 108
Joined: 08.09.2008 1:07

Post by Beren »

мне немного не нравится, что в модулях вылавливать ошибки трудно.
стелс пишет unit такой-то не найден или содержит ошибку, без указания строки.
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

Code: Select all

Resu lt := S1 + ' ' + S2;

Code: Select all

17:10:50:231 [NDW - test]: Compiler: [Error] (Unit2 at 11:1):  Unknown identifier 'Resu'
17:10:50:231 [NDW - test]: Compiler: [Error] (Unit1 at 5:6):  Unit 'Unit2' not found or contains errors
вон первая ошибка - это разве не указание на место ошибки?

Если у тебя что-то иное - давай примеры.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
Beren
Novice
Novice
Posts: 108
Joined: 08.09.2008 1:07

Post by Beren »

туплю, да)))
Alex
Moderator
Moderator
Posts: 351
Joined: 07.04.2005 4:41

Post by Alex »

возможно ли сделать вот так:

17:10:50:231 [NDW - test]: Compiler: [Error] ([url=http://#]Unit2 at 11:1[/url]): Unknown identifier 'Resu'

что бы координаты ошибки были ссылкой открывающей встроенный редактор скрипта в той строчке?
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

можно, но очень сложно и потенциально сильно глючно.
вердикт - нафиг.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
Post Reply