相关疑难解决方法(0)

std :: to_string的精度(double)

使用std :: to_string()将double转换为字符串时,有没有办法设置结果的精度?

c++ c++11

42
推荐指数
3
解决办法
2万
查看次数

需要帮助来了解字符串的错误

在c ++中我们std::to_string将int/float/double转换为字符串.所以,为了测试我对模板的理解,我尝试了下面的代码:

#include "iostream"
#include "sstream"
#include "string"
using std::cout;

template <typename T>
std::string getString(const T& data){
    std::stringstream ss;
    cout << '\n' << data << '\n';
    ss << data;
    std::string s;
    ss >> s;
    return s;
}

int main(int argc , char** argv){
    cout << getString(1.0000011);
    cout <<' '<<std::to_string(1.0000011);
    return 0;    
}
Run Code Online (Sandbox Code Playgroud)

然而,输出没有意义,to_string给我1.0000011,而getString得到1并给我1.因为我使用模板也不应该getString得到1.0000011并给我1.0000011?

c++ string templates stl

1
推荐指数
1
解决办法
93
查看次数

标签 统计

c++ ×2

c++11 ×1

stl ×1

string ×1

templates ×1