我使用uint256_t对大整数进行算术运算;我想以常规形式(即不是浮点形式)提取数字的位,没有任何精度,因为我只使用整数而不使用浮点数。
例如:如果我的代码有:
#include <boost/multiprecision/cpp_int.hpp>
uint256_t v = 0xffffffffffffffffffffffffffffff61;那么我想要32个字节:
61 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00发布于 2016-03-16 22:44:16
你不能直接得到你想要的东西。内部表示不一定是这样做的,一种类型使用偶数位数字。
你可以间接获得它。
uint256_t v = 0xffffffffffffffffffffffffffffff61;
std::ostringstream ost ;
ost << std::hex << v ; 现在ost.str()是FFFF....FFF61
https://stackoverflow.com/questions/36037686
复制相似问题