|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
16.07.2010, 20:28 | #21 |
Форумчанин
Регистрация: 03.01.2010
Сообщений: 229
|
Vago, не верно.
Код:
подпись
Последний раз редактировалось liljon; 16.07.2010 в 20:36. |
16.07.2010, 20:54 | #22 |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
hide - неправильный глагол. hide - hid - hidden
... Вы хотите сказать, что в этот else Ваша программа попадает после самого первого (самого верхнего) goto EXCEPT; ? Ой ли?... |
16.07.2010, 21:02 | #23 |
Форумчанин
Регистрация: 03.01.2010
Сообщений: 229
|
нет, попадет, если утверждение верно, после всех проверок
подпись
|
16.07.2010, 21:25 | #24 |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
Простите, какое утверждение? Скопипастите тот оператор if, о котором Вы сейчас говорите, если Вас не затруднит...
|
16.07.2010, 22:25 | #25 |
Форумчанин
Регистрация: 03.01.2010
Сообщений: 229
|
стойте...
Вообщем в цикле "for (int i=0;i<c;i++)", после FindWords, идет анализ каждого слова. А вы выходите из функции если найдено слово исключение (просто вы не до конца разобрались), тоесть последующие слова анализироваться не будут. Функция CheckHideWord проверяет заэвуалировано ли слово, и если да установит флаг ret в true, что после анализа всех слов будет значит, что нужно изменить строку. Все слова разделяються и ложаться в список list и если необходимо найденное слово заменить другими символами, то это слово в этом же списке, просто перезаписывается. А дальше строка восстанавливаеться из него же в самом конце. Код:
Ну исправите вы код без goto, но больше текста прибавиться, вот к примеру вы вписали еще одну функцию,а тот кто будет анализировать ваш код, возьмет и не поймет зачем она нужна, точнее поймет, но со временем (на это ведь тоже уйдет время. Образно говоря прибавяться ветки условий, а разве это не затруднит понимание кода?). Хотя интуитивно ясно, что значит isExcept, так же само можно интуитивно понять что за метка такая EXCEPT. В любом случае анализировать чужой код всегда тяжело, и не говорите, что из за моих безусловных переходов вы плохо разобрались, разбораться плохо можно в любом коде, я например чаще всего прибегаю к дебагеру и построчно прогоняю код. Ведь не всегда взглянув на чужой код становиться ясно что и где, правильно? Или вы хотите сказать, что не прогоняете код в дебагере? Так и с моими goto, если не ясно - дебагер. Я не считаю, что в приведенном мною примере все очень запутано. goto может быть очень полезен в парсерах текста, ну и при выходе из вложеных циклов, больше незачем его куда-то лепить.
подпись
Последний раз редактировалось liljon; 16.07.2010 в 22:31. |
16.07.2010, 23:19 | #26 |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
1. По технической стороне вопроса. Этот код включаем в ф-ю:
Код:
Код:
|
17.07.2010, 12:01 | #27 | |
Форумчанин
Регистрация: 03.01.2010
Сообщений: 229
|
Цитата:
И все-равно употребление goto в разумных колличествах упрощает код. Да ну вас... всегда буду использвать безусловные переходы в парсерах. Одна - две метки это нормально. Может в ассемблере тоже стоит jmp запретить? А то не безопасно как-то и затрудрняет понимание кода.
подпись
Последний раз редактировалось liljon; 17.07.2010 в 12:06. |
|
17.07.2010, 12:57 | #28 |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
|
17.07.2010, 13:14 | #29 |
Не
Участник клуба
Регистрация: 29.10.2009
Сообщений: 1,456
|
я думаю, что практически всегда можно обойтись без goto. Компилятор сам решит где его поставить в асм
|
24.07.2010, 14:03 | #30 | ||
Пользователь
Регистрация: 06.06.2010
Сообщений: 42
|
Цитата:
Цитата:
Последний раз редактировалось Oleg_SK; 24.07.2010 в 14:08. |
||
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Паскаль. использование условного оператора в теле операторов цикла с условием и после него | машко | Помощь студентам | 1 | 22.06.2009 00:52 |
использование условного оператора после операторов цикла с условием | машко | Помощь студентам | 8 | 21.06.2009 23:59 |
использование условного оператора в теле оператора цикла с условием | машко | Помощь студентам | 2 | 21.06.2009 23:55 |
Использование оператора условия | Virtson | Microsoft Office Access | 2 | 15.12.2006 16:13 |