• Авторизация


Маразм кодический... 22-10-2006 12:02 к комментариям - к полной версии - понравилось!


Пишу:
if (label2 = 'l') {...} else {...}

Получаю безусловное исполнение. Проверяю что содержится в label2, вижу что совсем не 'l'  Уфигеваю.. поскольку else как раз куда чаще встречается переписываю:

if (label2 != 'l') {...} else {...}

Работает как надо. Уфигиваю в конец.. Потом меня осеняет! да-да.. в первом случае была оперция инкриминирования, а не сравнения. и что характерно она выдавала TRUE, а if его жевал и причмокивал. Ох уж мне этот Си. :))
вверх^ к полной версии понравилось! в evernote
Комментарии (10):
Marvelous_Alisa 22-10-2006-12:04 удалить
Хехе... А мы в школе на Паскале писали программки. Там тоже были if и random. Как же давно это было!!!
Homer2k3 22-10-2006-12:04 удалить
PS Всё-таки отсутствие тренировки в течение последних лет дает о себе знать.
Homer2k3 22-10-2006-12:06 удалить
Чудная_Алиса, ну в Паскале такая бы ситуация не была возможна. Маразматичность ситуации понятна тому, кто видел С.
Marvelous_Alisa 22-10-2006-12:07 удалить
Homer2k3, Ну ладно, ладно, кто ж спорит)) С не видела никакой)))))
Homer2k3 22-10-2006-12:16 удалить
Чудная_Алиса, Да я просто пытаюсь объяснить комичность ситуации. человек как думает: нужно проверить равно ли a и b? (a=b?) на Сях надо написать if (a == b) а если написать if (a = b), то сначала переменной a присвоится значение переменной b, со 100% вероятностью эта операция будет успешная, т.е. вернет if'у значение TRUE, и соответвенно выполнятся внутренности if'а. В Паскале как раз сравнение делвется методом a = b, а вот присвоение a := b. PS Но серано после Си Паскаль не канает. :)
Паскаль по сравнению с С - попса. Даже если оператеры С и не похожи на используемые в Паскале и во многих паскалеподобных общеиспользуемых языках. ;)
Homer2k3 24-10-2006-18:26 удалить
Дата_отгрузки, так я ж и говорю. Не канает Паскаль после Си (мне пришлось изучать его в институте, а в школе мы на С писали). Си развращает.. :))
Cyxapb 08-11-2006-16:37 удалить
вопрос в том, что было первее - курица или яйцо? присваивание первично. больше всего в коде именно присваивания. Даже в таком как РНР, где с переменными можно обращаться как заблагорассудится. Посему оператор присваивания - короче. А операторы проверки на равенство - оба двухсимвольные, всё логично. Просто надо привыкнуть. Не знаю, как в сях, в РНР - другой гемор, там 0, false и пустая строка в логическом контексте означают одно и то же, поэтому периодически приходится проверять не только на равенство, но и на идентичность (===), дабы интерпретатор не воспринял контекст как логический.
Homer2k3 08-11-2006-19:19 удалить
Cyxapb, просто этот "маразм" надо было видеть в лицах.. я всерьёз начал задумываться о своем психическом здоровье. :))


Комментарии (10): вверх^

Вы сейчас не можете прокомментировать это сообщение.

Дневник Маразм кодический... | Homer2k3 - Res Nullius | Лента друзей Homer2k3 / Полная версия Добавить в друзья Страницы: раньше»