我需要帮助处理非常大的数字。根据Windows计算,指数
174^55 = 1.6990597648061509725749329578093e+123
我如何使用 C(c99 标准)存储它?
int main(){
long long int x = 174^55; //result is 153
printf("%lld\n", x);
}
最佳答案
C 中的普通类型通常最多只能存储 64 位,因此您必须在数组中存储大数字,并自己编写数学运算。但你不应该在这里重新发明轮子 - 你可以尝试 GNU Multiple Precision Arithmetic Library为此目的。
正如注释已经指出的那样,^
运算是二进制异或。对于求幂,您必须使用 pow
等数学函数。
关于c - 在 C 中存储和使用大数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54693070/