Console.WriteLine(int.MaxValue); //2147483647 int a = int.MaxValue; int b = int.MaxValue; int t = a * b; //1 long c =(long) a * (long)b; Console.WriteLine("c:{0}",(long)a * (long)b);//c:4611686014132420609 Console.WriteLine("Math.BigMul:" + Math.BigMul(a,b));//Math.BigMul:4611686014132420609
试试:(long)int1 * int2;
int b = int.MaxValue;
int t = a * b; //1
long c =(long) a * (long)b; Console.WriteLine("c:{0}",(long)a * (long)b);//c:4611686014132420609
Console.WriteLine("Math.BigMul:" + Math.BigMul(a,b));//Math.BigMul:4611686014132420609