我在boost,multiprecision库中使用int128_t
。
当我写int128_t number = 265252859812191058636308480000000;
时
我有一个错误,那个常数太长了。
如何正确输入128位值? 例如:
int128_t中的 AF5228967057FE1CB84B92511BE89A47
?
答案 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描述了如何使用它们。