簡體   English   中英

在 C 中進行大型數學運算時的結果錯誤

[英]error in result while doing large mathematical operations in C

我使用了 long long 結果; 將 150 的結果存儲到 53 次方,但它仍然在 C 中給出 -8 結果。我不知道用什么來在 C 中存儲如此大的值。

150 的 53 次方整數表示正好需要 384 位。 long long的寬度——如果它甚至被支持——可能會有所不同,但 128 位是常見的,我會驚訝地看到它長於 256 位。

您可以使用各種 bignum 庫來表示該值(在這種情況下,您還需要使用該庫來操作它)。 或者,您可以將其存儲為double double可以表示這種數量級的數字,但它們的精度有限。 對於許多目的,它們是完全足夠的。

暫無
暫無

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

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