Что плохого в конструкции If (i!=1) ?

  • Автор темы Автор темы Trs
  • Дата начала Дата начала
T

Trs

Прочитал в одной статье:
Не читают документацию, не знают приоритета операторов и не знают, как работают основные конструкции используемого ими языка программирования. Например, в языке Си при проверке булевского значения могут написать if(i!=1), и в большинстве своем не знают, почему такая конструкция, хотя и сработает правильно в большинстве случаев, в общем случае является ошибочной. Многие не могут объяснить, почему выражение “3>2>1” - ложно и почему, если сложить в цикле 1001 раз по 0.001, результат записать в переменную а, а потом его сравнить: “a==1.001”, то ответ «равно» будет с некоторой, без сомнения, отличной от нуля, но, тем не менее, весьма маленькой вероятностью. Не понимают, в связи с чем при записи в ос Windows в бинарный (ли?) файл числа 137.0534 в формате float, это число записывается и считывается нормально, а если вместо этого числа записать “138.0534”, то всё начинает глючить. И тд, и тп. Если, конечно, не искали ответы именно на эти вопросы заранее.
С большинством примеров понятно, а что плохого в if(i!=1)? До меня не доходит. Просветите пожалуйста.
 
Думаю, ключевое слово здесь - "при проверке булева значения" - т.е. BOOL\bool i, а там не уверен что стандартом определено реальное значение для TRUE.
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab