簡體   English   中英

如何處理c ++中大於8字節或大於20位的大整數數據

[英]how to handle big integer data more than 8 byte or more than 20 digits in 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;
    }
}

我搜索了一段時間,但沒有找到有用的內容。所有關於java biginteger

在C ++中沒有比unsigned long long更大的內置類型。

你有2個選擇:

  • 使用支持“BigInts”的庫(例如gmp
  • 實現自己的“BigInt”類

你可以使用庫來實現它。 許多圖書館都可供使用。 如:

Gmplib

BIGINT

有關詳情,請參閱

任意precision_arithmetic#庫

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM