我在C语言中测试这段代码
long long n = 1000000;
long long var1,var2;
int x = 50000;
var1 = n * x * x;
var2 = x * x * n;
printf("var1 = %lld\n", var1);
printf("var2 = %lld\n", var2);
当我运行时,它会产生以下输出
var1 = 2500000000000000
var2 = -1794967296000000
我不理解为什么更改相乘的变量顺序会导致溢出。