【发布时间】:2021-11-07 12:17:25
【问题描述】:
我想用大整数做一些类似下面的计算:
#include<stdio.h>
int main (){
long a = 123456789123456789123456789123456789;
long b = 2*b;
printf("%ld", a);
printf("\n");
printf("%ld",b );
return 0;
}
当前生成:
main.c:4:12: error: integer literal is too large to be represented in any integer
type
long a = 123456789123456789123456789123456789;
^
1 error generated.
我知道有一个名为 libtomath 的库,正如另一个 SO question 所指出的那样,但我找不到任何示例,而且我是 C 新手,不知道如何通读库来找到回答。如何使用 libtomath(或其他解决方案)修改代码?
【问题讨论】:
标签: c math biginteger bigint