2014-04-01 97 views
-1

我在boost,multiprecision庫中使用int128_t輸入128位值C++ boost

當我寫int128_t number = 265252859812191058636308480000000; 我有一個錯誤,那個常數太長。

如何正確輸入128位值? 例如:

AF5228967057FE1CB84B92511BE89A47 in int128_t?

+2

當然會有一個在boost文檔中初始化這種類型的變量的例子嗎? –

+0

我找不到如何初始化這個變量。你能寫一個網址嗎? 謝謝 – Sofiia

回答

0

正如@ jonathon-reinhart所說,閱讀boost文檔的一小部分會引導你回答問題。

具體而言,http://www.boost.org/doc/libs/1_55_0/libs/multiprecision/doc/html/boost_multiprecision/tut/conversions.html顯示瞭如何從(比方說)字符串構造多精度類型。

您不能從文字構造它,因爲文字只是內置類型。除非你使用C++ 11,並且你有一個支持用戶定義的文字轉換的編譯器,在這種情況下,http://www.boost.org/doc/libs/1_55_0/libs/multiprecision/doc/html/boost_multiprecision/tut/lits.html描述瞭如何使用這些轉換。