在c ++中存储和打印10+数字整数

Sha*_*ean 2 c++

我正在使用cout将数字打印到控制台.我还将高达13亿的数值存储为数字并对其进行计算.我应该使用哪种数据类型?

当我执行以下操作时:

int a = 6800000000;
cout << a;
Run Code Online (Sandbox Code Playgroud)

它打印-1789934592.

谢谢.

Ign*_*ams 14

long long最多可以容纳9223372036854775807. gmp如果你需要更大的话,请使用类似的东西.


Mat*_*hen 6

使用int64_t保证不会溢出.它可以从stdint.h获得.

  • "你"和OP一样,存储了大约130亿美元.显然,`int64_t`仍然可以溢出. (3认同)