2
我想在C++中表示一些大數字。在下面的代碼中,如果只試圖打印s
,編譯器就不會抱怨。但如果嘗試進行一些乘法運算並將其存儲在t
中,編譯器會說integer overflow in expression...
如何在C++中表示大數字
我試圖使其成爲unsigned long long t
,但編譯器仍然抱怨。在沒有任何溢出的情況下進行這種乘法有什麼辦法嗎?
int main()
{
long long int s = 320718425168;
long long int t = 4684688*68461; //4684688*68461 = 320718425168
return 0;
}
使用「大號」庫。如果你真的要用遠超「長期」範圍的數字來工作,那麼它們就存在着。 – PaulMcKenzie 2014-11-21 21:46:07
不,我不想使用任何庫(外部庫) – user3764893 2014-11-21 21:47:23
然後重新實現一個bignum庫.. – 2014-11-21 21:47:39