質問
私は数学の例を扱っています。コードに12桁の番号を使用する必要があります。では、関数の数を使用するために、どのデータ型を使用する必要がありますか?
解決
64ビット整数(long
, int64_t
, unsigned long
, uint64_t
)トリックを行う必要があります、または小数が必要な場合は、 double
また long double
.
他のヒント
64ビットの整数タイプがある場合、(18桁の桁)範囲を提供するので、私はそれを使用します。
−9,223,372,036,854,775,808 to
+9,223,372,036,854,775,807
他のタスク(さらに大きな整数または大規模な浮動小数点値)の場合、私は使用します GMP, 、GNUマルチエシジョンライブラリ。パフォーマンスは印象的です。
フォーマット仕様「LLU」を備えた「Unsigned Long Long」を使用することもできます。 Cで12桁の数で正常に動作します。
unsigned long long i=600851475143;
printf("%llu",i);
Bignumというライブラリを探している間、私はこれを見つけました wikiページ
所属していません StackOverflow