如何处理c ++中大于8字节或大于20位的大整数数据

Sof*_*kat 5 c++

大小integer为4,long long int是8字节,它可以访问大约19位数据,对于无符号长long int大小也是8字节但处理大于long long int的值但是这个小于20位.有什么方法可以处理20位数据.

#include<iostream>
using namespace std;
int main()
{
    unsigned long long int a;//any data type more than 8 byte can handle
    cin>>a;
    if(a>789456123789456123123)//want to take a higher thand this digits
    {
        cout<<"a is larger and big data"<<endl;
    }
}
Run Code Online (Sandbox Code Playgroud)

我搜索了一段时间,但没有找到有用的内容.所有关于是java biginteger.

Rak*_*111 4

unsigned long long没有比C++ 中更大的内置类型。

您有 2 个选择:

  • 使用支持“BigInts”的库(例如gmp
  • 实现您自己的“BigInt”类