C では、次の簡単な操作を実行できます。
int a = b + c;
a
が 2^32 より大きい場合 (または 2^31+1 の場合)、コードを次のように変更します。
long a = b + c;
また
unsigned long a = b + c;
しかし、次のような追加をどのように実装しますか?
bigint a = b + c;
ここで、bigint は、大きな整数 (数百桁の長さの数値) を格納および計算するためのある種のクラス/typedef/構造体です。小学校の標準的な手書きの小数アプローチを使用して数字を足し合わせようとしているだけの場合は、方程式で無限に長い数を実行できます。しかし、コンピュータ サイエンスに取り掛かると、無限に長い計算を実行できるバイナリの効率的なアプローチをどのように使用できますか (十分な RAM が利用可能である場合)。
もっとそう、ひどく遅くないこれを行う方法はありますか?