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

Вниз

Точка прерывания   Найти похожие ветки 

 
Dec   (2006-01-26 16:39) [0]

Можно ли в Delphi поставить точку прерывания по условнию?
К примеру, есть цикл

for i := 1 to N do
begin
...
end;

Как сделать, чтобы программа прервалась при i = 100?


 
wal ©   (2006-01-26 16:40) [1]

Можно


 
ma5ter ©   (2006-01-26 16:49) [2]

halt(0) кажется


 
PAVIA ©   (2006-01-26 16:55) [3]

Ставтишь брекпоинт, правой конопкой по ниму breakpoint properties затетем в грофе условия(condition) пишиш условие i=100.


 
Джо ©   (2006-01-26 16:57) [4]

> [2] ma5ter ©   (26.01.06 16:49)
> halt(0) кажется

Сам придумал или где вычитал? ;>


 
Kolan ©   (2006-01-26 20:53) [5]

Run -> Add Breakpoint -> Sourse Breakpoint -> строка Condition


 
Гаврила ©   (2006-01-26 23:52) [6]

Да не, господа, для того, чтобы программа прервалась при i = 100, надо так и написать
if I=100 then
 Halt(0);
ma5ter совершенно прав


 
Гаврила ©   (2006-01-26 23:53) [7]

ну, или, например Halt(100)
или Halt(I)
последний вариант предпочтительнее, так как таким образом мы получим возможность снаружи определить, на каком именно проходе цикла программа прервалась


 
Германн ©   (2006-01-27 02:41) [8]


> Гаврила ©   (26.01.06 23:52) [6]
>
> Да не, господа, для того, чтобы программа прервалась при
> i = 100, надо так и написать
> if I=100 then
>  Halt(0);
> ma5ter совершенно прав
> <Цитата>
> Гаврила ©   (26.01.06 23:53) [7]
>
> ну, или, например Halt(100)
> или Halt(I)
> последний вариант предпочтительнее, так как таким образом
> мы получим возможность снаружи определить, на каком именно
> проходе цикла программа прервалась
> <Цитата>
>


Гений ты наш Гаврила. Кстати не служил ли ты раньше "хлебопёком" или "почтальоном" или ещё кем-либо упоминавшимся Ляпис-Трубецким в его опусах?
Halt() - прекращает выполнение программы! А "прервать" выполнение программы - это нечто иное.


 
k2 ©   (2006-01-27 05:40) [9]

Германн ©   (27.01.06 02:41) [8]
он шутит :)


 
TUser ©   (2006-01-27 08:16) [10]

if i = 100 then break;

цикл ему нао прервать, а не программу


 
syte_ser78 ©   (2006-01-27 09:12) [11]

break


 
Gero ©   (2006-01-27 12:24) [12]

> Halt() - прекращает выполнение программы! А "прервать" выполнение
> программы - это нечто иное.

В чем различие?


 
syte_ser78 ©   (2006-01-27 15:09) [13]

Gero ©   (27.01.06 12:24) [12]
под перрыванием программы человек наверно имелл вииду выход из цикла


 
Гаврила ©   (2006-01-27 15:32) [14]


> Германн ©  


> Кстати не служил ли ты раньше "хлебопёком" или
> "почтальоном" или ещё кем-либо упоминавшимся
> Ляпис-Трубецким в его опусах?


я это слышал уже раз 500, причем каждый раз оппонент был уверен, что говорит нечто оригинальное

> k2 ©  


> он шутит :)

так точно ).
Точнее вчера я думал, что речь идет о BreakPoint"е, а вот сейчас уже не уверен

> TUser ©  


> цикл ему нао прервать, а не программу

Варианта три
-Halt
-break
-Brealpoint по условию
Из первоначального текста определить, что имеется в виду, невозможно


 
Gero ©   (2006-01-27 15:39) [15]

> syte_ser78 ©   (27.01.06 15:09)
> Gero ©   (27.01.06 12:24) [12]
> под перрыванием программы человек наверно имелл вииду выход
> из цикла

К сожалению, я не телепат, поэтому не знаю, что он имел ввиду. А сказал он «чтобы программа прервалась».


 
McSimm ©   (2006-01-27 15:57) [16]

а на мой взгляд словосочетание "точка прерывания" довольно определенное

и вопрос задан совершенно нормально.


 
Gero ©   (2006-01-27 16:00) [17]

> McSimm ©   (27.01.06 15:57)

Можно влспринимать двояко.


 
McSimm ©   (2006-01-27 16:03) [18]

да. но можно этого и не делать. зависит от игривости настроения, не так ли?
:)


 
Gero ©   (2006-01-27 16:04) [19]

> McSimm ©   (27.01.06 16:03)

Согласен :)


 
Плохиш ©   (2006-01-27 16:17) [20]

Предлагаю ветку закрыть и удалить. Потому что это развод. За сутки автору ответ не понадобился.


 
Gero ©   (2006-01-27 16:18) [21]

> закрыть и удалить

Выкрасить и выбросить? :)


 
McSimm ©   (2006-01-27 16:24) [22]


> Потому что это развод. За сутки автору ответ не понадобился.

откуда информация, от автора?


 
Плохиш ©   (2006-01-27 16:32) [23]


> откуда информация, от автора?

Из отсутствия реакции автора на то, что вопрос не понятен. Хотя может он диссертацию по психологии пишет :-)


 
McSimm ©   (2006-01-27 16:33) [24]

кем не понят?

вопрос был понят и ответы получены. ([3] и [5])
кому-то захотелось поразвлекаться halt`ами и прочими, автор тут при чем?


 
syte_ser78 ©   (2006-01-27 16:43) [25]

Автор может не в курсе что в отличие от большинства форумов этот самый "ответистый" :)


 
syte_ser78 ©   (2006-01-27 16:46) [26]

А насчет "поразвлечься" не согласен.
Вопрос мог звучать - как установить брекпоинт по условию, например x=100, в вопосе же приведен цикл из которго тоже возможен выход (прерывание цикла)


 
McSimm ©   (2006-01-27 16:56) [27]


> Вопрос мог звучать - как установить брекпоинт по условию

предлагаю сравнить с

> Можно ли в Delphi поставить точку прерывания по условию?


 
syte_ser78 ©   (2006-01-27 17:00) [28]

Вобщето Вы правы. Так как

> Можно ли в Delphi поставить точку прерывания по
> условию?

Ключевое слово всетаки - Делфи. Тоесть среда розработки. Зачит всетаки речь шла о брекпоинте.


 
homm ©   (2006-01-28 00:11) [29]


> Можно ли в Delphi поставить точку прерывания по условнию?

if <условие любой сложности> then asm int 3 end;
По сравнению с этим любой Breakpoint - детский лепет ;)


 
Gero ©   (2006-01-28 00:51) [30]

> Ключевое слово всетаки - Делфи. Тоесть среда розработки.

Это еще и язык.


 
Piter ©   (2006-01-28 01:26) [31]

Gero ©   (28.01.06 0:51) [30]
> Ключевое слово всетаки - Делфи. Тоесть среда розработки.

Это еще и язык.


язык - Delphi Language :)

Германн ©   (27.01.06 2:41) [8]
Гений ты наш Гаврила. Кстати не служил ли ты раньше "хлебопёком" или "почтальоном" или ещё кем-либо упоминавшимся Ляпис-Трубецким в его опусах?


хех... в 3 часа ночи ЧЮ у некоторых товарищей пропадает :)


 
Gero ©   (2006-01-28 01:57) [32]

> язык - Delphi Language :)

Согласен, просто Delphi это лишь бренд.


 
ECM ©   (2006-01-28 10:50) [33]


> homm ©   (28.01.06 00:11) [29]
>
> > Можно ли в Delphi поставить точку прерывания по условнию?
>
>
> if <условие любой сложности> then asm int 3 end;

Хочу добавить - этот метод имеет один большой плюс - он не нагружает
отладчик проверкой условия - поэтому быстродействие отлаживаемой программы почти не уменьшается.
Попробуйте поставить брейкпойнт по условию в каком нибудь огромном цикле - на достаточно большое значение i - устанете ждать :))


 
Dec   (2006-02-08 17:45) [34]

Ответ был получен в [5] и полностью меня устроил. Прошу прощения, что забыл поблагодарить за ответ. Модератора прошу закрыть эту ветку.


 
msguns ©   (2006-02-08 17:50) [35]

В условиях запрета вредоносных футболо-политико-бельевых тем народ сбился на лавочно-бабусье зубоскальство ;)



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

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

Наверх





Память: 0.53 MB
Время: 0.015 c
1-1138610482
rolex
2006-01-30 11:41
2006.03.05
Как избавиться в ListView от мерцания при прокрутке?


2-1139994513
Id
2006-02-15 12:08
2006.03.05
Excel


1-1138804054
alson
2006-02-01 17:27
2006.03.05
реализация АВЛ дерева на Delphi


1-1137161554
HITMAN
2006-01-13 17:12
2006.03.05
Можно ли заставить HyperTerminal всегда работать в режиме приёма?


2-1139078593
Человек
2006-02-04 21:43
2006.03.05
Сайт без браузера





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский