gpt4 book ai didi

c++ - std::string 和格式字符串

转载 作者:搜寻专家 更新时间:2023-10-31 00:23:41 26 4
gpt4 key购买 nike

我通过谷歌找到了下面的代码。它几乎完成了我想要它做的事情,除了它没有提供一种方法来指示精度,如 '%.*f' 在 C 类型格式字符串中所做的那样。此外,它不提供超过 5 位小数的任何内容。我是否必须坚持使用 C 字符串和 snprintf?

#include <string>
#include <sstream>
#include <iostream>

template <class T>
std::string to_string(T t, std::ios_base & (*f)(std::ios_base&))
{
std::ostringstream oss;
oss << f << t;
return oss.str();
}

int main()
{
std::cout<<to_string<double>(3.1415926535897931, std::dec)<<std::endl;
return 0;
}

最佳答案

您想使用 std::setprecision操纵器:

int main()
{
std::cout << std::setprecision(9) << to_string<long>(3.1415926535897931, std::dec)
<< '\n';
return 0;
}

关于c++ - std::string 和格式字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1575698/

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