Карточка Junior Типы и неопределённое поведение спрашивают часто обновлено

UB, implementation-defined, unspecified

Вопрос

Чем отличаются undefined, implementation-defined и unspecified behavior?

Попробуйте сами

Ответьте про себя или вслух, потом откройте ответ и сверьтесь.

Показать ответ и разбор

Коротко

Undefined: стандарт не требует ничего, программа некорректна (переполнение знакового, выход за границы). Implementation-defined: реализация выбирает и документирует (sizeof(int), знаковость char).

Ответ

Undefined: стандарт не требует ничего, программа некорректна (переполнение знакового, выход за границы). Implementation-defined: реализация выбирает и документирует (sizeof(int), знаковость char). Unspecified: один из допустимых вариантов без документации (порядок вычисления аргументов функции).

Разбор

Undefined: стандарт не требует ничего, программа некорректна (переполнение знакового, выход за границы). Implementation-defined: реализация выбирает и документирует (sizeof(int), знаковость char). Unspecified: один из допустимых вариантов без документации (порядок вычисления аргументов функции).

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.