C#教程
C#控制语句
C#函数
C#数组
C#面向对象
C#命名空间和异常
C#文件IO
C#集合
C#多线程
C#其它

C# 选中和未选中

C# Checked 和 Unchecked

C# 提供了 checked 和 unchecked 关键字来处理整数类型异常。 Checked 和 unchecked 关键字分别指定了选中的上下文和未选中的上下文。在已检查的上下文中,算术溢出会引发异常,而在未检查的上下文中,会忽略算术溢出并截断结果。

C# Checked

checked 关键字用于在编译时显式检查溢出和整数类型值的转换。
我们先来看看一个不使用checked关键字的例子。

不使用checked的C#Checked例子

using System;
namespace CSharpProgram
{
    class Program
    {
        static void Main(string[] args) 
        {
                int val = int.MaxValue;
                Console.WriteLine(val + 2);
        }
    }
}
输出:
-2147483647
看,上面的程序产生了错误的结果,并没有抛出任何溢出异常。

C# Checked Example using checked

此程序抛出异常并停止程序执行。
using System;
namespace CSharpProgram
{
    class Program
    {
        static void Main(string[] args) 
        {
            checked
            {
                int val = int.MaxValue;
                Console.WriteLine(val + 2);
            }
        }
    }
}
输出:
Unhandled Exception: System.OverflowException: Arithmetic operation resulted in an overflow.

C# Unchecked

Unchecked 关键字忽略整数类型算术异常。它没有明确检查并产生可能被截断或错误的结果。
示例
using System;
namespace CSharpProgram
{
    class Program
    {
        static void Main(string[] args) 
        {
            unchecked
            {
                int val = int.MaxValue;
                Console.WriteLine(val + 2);
            }
        }
    }
}
输出:
-2147483647

昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4