【问题标题】:Input a 128-bit value c++ boost输入一个 128 位值 c++ boost
【发布时间】:2014-04-01 16:21:26
【问题描述】:

我在 boost、多精度库中使用 int128_t。

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

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

AF5228967057FE1CB84B92511BE89A47 int128_t?

【问题讨论】:

  • 在 boost 文档中肯定会有初始化这种类型的变量的例子吗?
  • 我找不到如何初始化这个变量。可以写个网址吗?谢谢

标签: c++ boost multiprecision


【解决方案1】:

正如@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 描述了如何使用这些。

【讨论】:

    猜你喜欢
    • 2021-04-13
    • 2018-04-03
    • 2015-06-05
    • 2016-10-11
    • 2023-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-18
    相关资源
    最近更新 更多