Ответы пользователя по тегу C
  • Как правильно использовать PVS-STUDIO?

    Andrey2008
    @Andrey2008
    DevRel в PVS-Studio
    Выключены все наборы предупреждений. Об этом, кстати, и говорится в сообщении :). Нужно включить кнопки. Рекомендую включить "General" и "Optimization", нажатием на них.

    5ea9e7a3ac9e9760882452.png

    P.S. А, вообще, подумаем над доработкой интерфейса. Время от времени кто-то задаёт подобные вопросы. А значит, просто строки сообщения недостаточно, и следует придумать что-то ещё.
    Ответ написан
    Комментировать
  • Является ли результат выражения UB?

    Andrey2008
    @Andrey2008
    DevRel в PVS-Studio
    Всё сложно, так как стандарт меняется.

    i = i++;  // Это было неопределённым поведением до C++17
    i = ++i;  // А это было неопределённое поведение до C++11
    p[i] = i++;  // Это было неопределённым поведением до C++17

    Ещё на эту тему см. V567.

    В общем, теперь всё ещё более запутано и фиг разберёшься. :)

    Что делать? А просто не надо писать такие конструкции. Даже если теперь они стали корректными. Они путают программиста, читающего код и заставляют задумываться. Не делайте так. И пользуйтесь анализаторам PVS-Studio. Он укажет на непроектные и плохо написанные фрагменты кода.
    Ответ написан
    1 комментарий