c# checked 和 unchecked

前言

我们知道一个东西在c# 中 比如说int 的max 加1会等于min。

如:

static void Main(string[] args)
{
int i = 2147483647;
int b = i + 1;
Console.WriteLine(b);
Console.ReadLine();
}

那么是否可以检查出其是否溢出呢?

正文

static void Main(string[] args)
{
int i = 2147483647;
try
{
	checked
	{
		int b = i + 1;
		Console.WriteLine(b);
	}
}
catch
{
	Console.WriteLine("检查到错误,需要处理");
}
Console.ReadLine();
}

可以通过checked关键字来检查,但是默认不开启,我们需要设置。

打开项目的“属性”页。

单击“生成”属性页。

单击“高级”按钮。

修改“检查算法上溢/下溢”属性。

上一篇:0x01 Java 研习录 - 开发环境


下一篇:tjoi2018D2T2(luogu4590) 游园会 (状压dp)