输入128位值的c ++ boost

时间:2014-04-01 16:21:26

标签: c++ boost multiprecision

我在boost,multiprecision库中使用int128_t

当我写int128_t number = 265252859812191058636308480000000;时 我有一个错误,那个常数太长了。

如何正确输入128位值? 例如:

int128_t中的

AF5228967057FE1CB84B92511BE89A47

1 个答案:

答案 0 :(得分:0)

正如@ jonathon-reinhart所说,稍微阅读一下提升文档会引导你找到答案。

具体来说,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描述了如何使用它们。