我需要格式化双精度数。我使用下面的代码
wstring to_wstring1(double f){
wchar_t wc[0x40];swprintf(wc,countof(wc),L"%E",f);return wstring(wc);
}
有没有办法避免使用缓冲区wc? 我正在考虑分配一个带缓冲区大小的wstring并在那里写入并在将字符串调整到最后的0之后。有更简单的方法吗?
答案 0 :(得分:1)
您可以使用std::to_wstring(double)
。
注意:它确实需要C ++ 11
答案 1 :(得分:1)
这样的东西?
#include <iostream>
#include <sstream>
int main() {
std::wostringstream w;
w << 1.0;;
std::wcout << w.str() << std::endl;
}
注意:它不需要C ++ 11