LINUX.ORG.RU

История изменений

Исправление hateyoufeel, (текущая версия) :

вы не туда затирали. итак понятно что деление на ноль это уб. и программа некорректна. я спорю с тем странным правилом, что якобы надо все участки кода с уб автоматически поудалять, и тогда программа станет вполне себе ничего.

Нет, чувак, мы тебе затирали именно туда. Undefined behaviour – это буквально значит, что поведение программы не определено. То есть оно может быть любым. Вообще любым. Тут нет странного правила, тут вообще никакого правила нет.

а она станет только хуже. потому что неверно написанную функцию оптимизатор превратит в верную, по своему усмотрению..и все будет даже какое-то время работать, но ошибка вскроется потом и ее сложно будет отыскать. это вместо того, чтобы свалится как раз в месте имеющегося в исходном коде уб. то есть проблему не решили, не избежали, а закидали ветками так, что ее не найдешь.

И вот именно за это C и C++ все так любят :)

Исходная версия hateyoufeel, :

вы не туда затирали. итак понятно что деление на ноль это уб. и программа некорректна. я спорю с тем странным правилом, что якобы надо все участки кода с уб автоматически поудалять, и тогда программа станет вполне себе ничего.

Нет, чувак, мы тебе затирали именно туда. Undefined behaviour – это буквально значит, что поведение программы не определено. То есть оно может быть любым. Вообще любым. Тут нет странного правила, тут вообще никакого правила нет.