gpt4 book ai didi

c++ - 在 C++ 中转储十六进制 float

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:11:10 25 4
gpt4 key购买 nike

我试过以下:

std::cout << std::hex << 17.0625;

但它以十进制转储了它。我想看看 11.01(十六进制的 17.0625)。如何以十六进制打印一些浮点值?

请不要提供以下解决方案:

void outhexdigits(std::ostream& out, fp_t d, int max_chars=160)
{
while(d > 0. && max_chars)
{
while(d < 1. && max_chars){
out << '0';
--max_chars;
d*=16;
}

if (d>=1. && max_chars) {
int i = 0;
while (d>=1.)
++i, --d;
out << std::hex << i;
--max_chars;
}
}
}

有什么方法可以在 STL/boost 中转储十六进制 float 吗?

最佳答案

尝试 cout << std::hexfloat << 1.0625;这需要 C++11。

关于c++ - 在 C++ 中转储十六进制 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20662859/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com