Вашему вниманию предлагается полный список разделов электронной книги (12 из 11 :)), посвящённой неопределённому поведению. Книга не является учебным пособием и рассчитана на тех, кто уже хорошо знаком с программированием на C++. Это своего рода путеводитель C++ программиста по неопределённому поведению, причём по самым его тайным и экзотическим местам. Автор книги — Дмитрий Свиридкин, редактор — Андрей Карпов.
Рубрика «ошибки в коде»
Путеводитель C++ программиста по неопределённому поведению
2025-01-28 в 10:58, admin, рубрики: C, c++, undefined behavior, баги, Компиляторы, неопределённое поведение, ошибки в коде, ошибки программистов, Программирование, СиСамая красивая ошибка, которую я нашёл с помощью PVS-Studio в 2024 году
2024-10-28 в 7:23, admin, рубрики: bugs, C, c++, DPDK, pvs-studio, баги, информационная безопасность, ошибки в коде, Си, статический анализ кодаСразу предупреждаю, мои вкусы очень специфичны. Красота ошибки в том, что человеку её очень сложно найти. Я не верю, что её можно заметить при обзоре кода. Если только заранее знать, что она есть, и искать её целенаправленно.
Ошибку я нашёл в проекте DPDK. В нём есть и другие ошибки, но про них потом. Они меркнут перед этим алмазом. Только не ждите чего-то эдакого. Ошибка проста до безобразия. Вот только найти её, просматривая код, ой как непросто. Собственно, попробуйте сами.
Объявляю ошибку вида if (x = 42) вымирающей и заношу её в Красную книгу C и C++ багов
2024-05-30 в 7:53, admin, рубрики: C, c++, pvs-studio, баги, Компиляторы, Красная книга, нотация Йоды, ошибки в коде, Программирование, Си, статический анализ кода
Если спросить программиста, какие баги чаще всего можно встретить в C и C++ коде, он назовёт разыменование нулевого указателя, неопределённое поведение, выход за границу массива и другие, на его взгляд, типовые паттерны ошибок. Скорее всего, он назовёт и случайное присваивание в условии. Но действительно ли эта ошибка распространена в наше время?
30 лет DOOM: новый код — новые баги
2023-12-10 в 11:12, admin, рубрики: bugs, c++, DOOM, Gamedev, gamedevelopment, id software, баги, ошибки в коде, разработка игрСегодня первой игре из серии DOOM исполняется ровно 30 лет! Мы не могли обойти стороной это событие и в честь этого решили посмотреть, как же выглядит код этой легендарной игры спустя годы.

Предисловие
Игра: найди ошибку в C++ коде
2022-06-29 в 8:00, admin, рубрики: C, c++, code review, quiz, баги, Блог компании PVS-Studio, игра, КодоБред, найди ошибку, никто не читает теги, ошибки в коде, Программирование, Си, тестирование
Авторы анализатора PVS-Studio предлагают вам проверить свою внимательность и развлечься. Попробуйте быстро отыскать баг в фрагменте исходного кода и ткнуть в него мышкой.
Ошибка в коде, стоившая целой АЭС
2022-06-11 в 9:50, admin, рубрики: арбитраж, АЭС, Блог компании Timeweb Cloud, инженерные системы, ошибки в коде, расследование инцидентов, США, технологии, Читальный зал, Энергия и элементы питанияКоллекционирую вредные советы для С++ программистов
2022-01-03 в 20:07, admin, рубрики: C, c++, Блог компании PVS-Studio, вредные советы, КодоБред, ненормальное программирование, ошибки в коде, Си
Я пишу статьи, посвященные написанию качественного кода и про поиск ошибок с помощью инструментов статического анализа. Однообразие наскучивает, хочется пошалить. А давайте все вместе напишем статью "100 вредных советов для С++ программиста". Я начну, а вы подхватите.
Выявляем ошибки в релизе LLVM 13.0.0
2021-10-08 в 19:16, admin, рубрики: c++, clang, clang static analyzer, Clang-Tidy, LLVM, llvm 13, open source, pvs-studio, баги, Блог компании PVS-Studio, информационная безопасность, Компиляторы, обзоры кода, опечатки, открытый исходный код, ошибки в коде, статический анализ кода
Задача коммерческих статических анализаторов выполнять более глубокий и полный анализ кода, чем компиляторы. Давайте посмотрим, что смог обнаружить PVS-Studio в исходном коде проекта LLVM 13.0.0.
Пример, как в PVS-Studio появляются новые диагностики
2021-03-20 в 15:10, admin, рубрики: C, c++, CovidSim, MISRA, MISRA C, pvs-studio, баги, Блог компании PVS-Studio, информационная безопасность, качество кода, медицинское по, обзор кода, ошибки в коде, ошибки в программе, Программирование, Совершенный код, тестирование поПользователи иногда спрашивают, как появляются новые диагностики в статическом анализаторе PVS-Studio. Мы отвечаем, что черпаем вдохновение из разнообразнейших источников: книг, стандартов кодирования, собственных ошибок, писем наших пользователей и так далее. Сегодня мы придумали новую интересную диагностику и решили рассказать историю, как это произошло.
Не решают ли программисты противоречащие задачи (архитектура кода)
2020-12-05 в 9:34, admin, рубрики: ошибки в коде, ПрограммированиеДопустим, у нас есть сайт с товарами. У нас есть метод Product::getProducts
— возвращает массив товаров.
Затем к нам пришел менеджер и сказал: хотим сделать акции на сайте (скидки, распродажи). В каждой акции будут прикреплены товары. Мы написали метод Action::getProductsByActionId(actionId)
Затем к нам снова пришел менеджер и сказал что нужны еще статьи, к которым прикреплены товары. Добавим метод Article::getProductsByArticleId(arcticleId)
.
Вы скажите — давайте сделаем 1 метод с параметрами. Ок, мы до этого дойдем.
И тут внимание: Читать полностью »