using System;
public class Program
{
public static void Main()
checked // 打开整数溢出检查
try
int a = int.MaxValue;
Console.WriteLine("a = {0}", a);
a++; // a++ 后 a 已经超出了 int 的范围,发生异常,后面的代码不再执行
Console.WriteLine("运行不到此处");
}
catch (OverflowException oEx)
Console.WriteLine(oEx);
unchecked // 关闭整数溢出检查
int a = int.MaxValue; // a = 2147483647
a++; // 虽然 a++ 后 a 已经超出 int 的范围
// 但使用 unchecked 是此处不检查此异常,故后面的代码继续执行
Console.WriteLine("a = {0}", a); // a = -2147483648,最大值 +1 变为最小值
Console.WriteLine("可以运行到此处");