TGViewer
Библиотека программиста Библиотека программиста @proglibrary · 78K subscribers
Post #11918 1.51K
👀 strtod вернул ноль. Это число или ошибка?

В C ноль может быть и результатом разбора строки, и признаком того, что число вообще не удалось прочитать. Поэтому проверки только возвращённого значения недостаточно.

Автор разбора сравнивает поведение glibc и musl и требования ISO C и POSIX. Проверка одного errno тоже не переносима: при строке без числа реализации могут сигнализировать по-разному.

Для случая «ничего не разобрали» передавайте endptr и сравнивайте его с началом входной строки. Переполнение и потеря слишком малого значения требуют отдельных проверок. Небольшой разбор о том, почему привычный библиотечный вызов стоит проверять вместе с его контрактом.

🔗 Разбор strtod, найденный на Hacker News

🐸 Библиотека программиста
  • ❤ 3
  • 🔥 1
  • 🤔 1
More from @proglibrary
  1. Oct 17, 2026📊 Формула верная. Входные данные означают другое Функция возвращает правдоподобное число,…
  2. Oct 16, 2026🖥 До теста нужно пройти шесть слоёв абстракций В архивном обсуждении r/ExperiencedDevs уч…
  3. Oct 16, 2026👀 ИИ оставил двадцать замечаний. Сколько из них полезны? Количество комментариев мало гов…
  4. Oct 15, 2026☔️ Планы на выходные снова испортила погода? У нас есть план получше. Выходные — хороший п…
  5. Oct 15, 2026🧑‍💻 Какие навыки помогают вам в разработке в 2026 году? Что вы чаще используете в работе…
  6. Oct 15, 2026⌨️ Опечатка в HTML-шаблоне останавливает сборку Лукаш Лалинский сделал zt — шаблонизатор,…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →