C++-переполнение при выполнении сложения одним способом и получении правильного вывода другим способом, но почему? [дублC++

Программы на C++. Форум разработчиков
Anonymous
C++-переполнение при выполнении сложения одним способом и получении правильного вывода другим способом, но почему? [дубл

Сообщение Anonymous »

Я пишу код, и в нем есть строка, где a,b,c,d — целые числа,

Код: Выделить всё

int a, b, c, d;
long long sum = a + b + c + d;
Я получил переполнение как ошибку, но после ссылки на ответ и изменения суммы, как показано ниже в строках ответа, у меня не возникло никаких проблем:

Код: Выделить всё

long long sum = a;
sum += b;
sum += c;
sum += d;
Для этой строки я получил правильный результат. Но почему я не могу понять разницу?

Подробнее здесь: https://stackoverflow.com/questions/787 ... -output-in

Вернуться в «C++»