Почему не возникает исключение OverflowException? - C#

Узнай цену своей работы

Формулировка задачи:

Есть такой код:
Листинг программы
  1. //max - 2147483647
  2. int a = 2000000000;
  3. int b = 2000000000;
  4. int c = 0;
  5. try
  6. {
  7. c = a + b;
  8. }
  9. catch (OverflowException)
  10. {
  11. System.Console.WriteLine("О, счастье! Программа работает нормально!");
  12. }
  13. System.Console.WriteLine("c = " + c);
Выдает с = -294967296 и спокойно идет дальше. Как так?

Решение задачи: «Почему не возникает исключение OverflowException?»

textual
Листинг программы
  1.             //max - 2147483647
  2.             int a = 2000000000;
  3.             int b = 2000000000;
  4.             int c = 0;
  5.  
  6.             try
  7.             {
  8.                 checked { c = a + b; }
  9.             }
  10.             catch (OverflowException)
  11.             {
  12.                 System.Console.WriteLine("О, счастье! Программа работает нормально!");
  13.             }
  14.  
  15.             System.Console.WriteLine("c = " + c);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.733 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы