DivideByZeroExeption в программировании Csharp - PullRequest
0 голосов
/ 23 октября 2019

Я пытаюсь обработать DivideByZeroExeption в C #, но код не перехватывает исключение, результат печати консоли 10 / d: ∞

            double d = 0;
            try
            {
                double value = 10 / d;
                Console.WriteLine(value);
            }
            catch (DivideByZeroException e)
            {
                Console.WriteLine(e.Message);
                Console.WriteLine("Ignore...");
            }

введите изображениеописание здесь Но когда я изменил тип d с double на int или long , этот код выше работает нормально.

1 Ответ

0 голосов
/ 23 октября 2019
 int test = 0;
        try
        {
            double value = 10 / test;
            Console.WriteLine(value);
        }
        catch (DivideByZeroException e)
        {
            Console.WriteLine(e.Message);
            Console.WriteLine("Ignore...");
        }

Теперь этот код выдаст вам ошибку, которую вы ожидаете. Это относится к d как к чему-то другому. DivideByZeroException возникает только в случае целого числа.

...