C#中 checked 检查数字是否溢出问题 备忘

 private static void OverFlowExceptionTest()
        {
            //look this two Code  Where is different
            #region MyRegion

            Console.WriteLine("no check overflow");
            int val1 = int.MaxValue - 1;
            Console.WriteLine($"init val : {val1}");
            val1++;
            Console.WriteLine($"add One :{val1}");
            val1++;
            Console.WriteLine($"add Two :{val1}");
            val1++;
            Console.WriteLine($"add three :{val1}");
            #endregion

            #region check overflow

            //try
            //{
                checked
                {
                    Console.WriteLine("check overflow");
                    int val2 = int.MaxValue - 1;
                    Console.WriteLine($"init val : {val2}");
                    val2++;
                    Console.WriteLine($"add One :{val2}");
                    val2++;
                    Console.WriteLine($"add Two :{val2}");
                    val2++;
                    Console.WriteLine($"add three :{val2}");
                }
            //}
            //catch (Exception ex )
           // {
              //  Console.WriteLine( $"{ex.GetType()} say {ex.Message}  \r\n Exception Stack: {ex.StackTrace} " );
           // }
            
            #endregion

        }

自己尝试运行一下吧

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

望天hous

你的鼓励是我最大动力~谢谢啦!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值