int.maxvalue和int.minvalue之间的区别?

时间:2018-04-19 17:07:47

标签: c# int

我想知道你是否可以帮我解释一件事。 我想知道为什么我不能将int.maxvalue和int.minvalue之间的差异保存为long类型的变量。

static void Main(string[] args)
{
    int a = int.MaxValue;
    int b = int.MinValue;

    long c = a - b;

    Console.WriteLine(a);
    Console.WriteLine(b);
    Console.WriteLine(c);
    Console.ReadLine();
}

为什么我得到-1的结果,在这种情况下:

static void Main(string[] args)
{
    long a = int.MaxValue - int.MinValue;
    Console.WriteLine(a);
    Console.ReadLine();
}

为什么我会:

  

错误CS0220在检查模式下,编译时操作溢出。

我很困惑,因为long类型的数字应该很容易存储int.max和int.min之间的差异?

0 个答案:

没有答案