求dalao告诉我DEV这里该怎么扩充我的运算量
#include <stdio.h>#include <math.h>
int main()
{
double result;
result = pow(2,64);
printf("结果是%.0lf\n",result);
return 0;
}
用DEV算出来是18446744073709552000,裂开{:10_247:}
大佬告诉我改怎么办,用long 算出来结果是2147483647,用long long算出来结果是 -1为什么会这样{:10_266:}
正确结果是 18446744073709551616(差 384),不同电脑不同内存大小,可能你的 double 精度最多只能算出这个答案,至於 long long 是 -1 是因为已经越界了(long long 最大是 9223372036854775807,而答案多一倍大,所以越界,目前最大可以显示的是 double) 傻眼貓咪 发表于 2021-10-25 13:01
正确结果是 18446744073709551616(差 384),不同电脑不同内存大小,可能你的 double 精度最多只能算出这 ...
懂了{:10_257:}原来如此
页:
[1]