命名空间
变体
操作

std::to_wstring

来自 cppreference.cn
< cpp‎ | string‎ | basic string
 
 
 
std::basic_string
 
定义于头文件 <string>
std::wstring to_wstring( int value );
(1) (since C++11)
std::wstring to_wstring( long value );
(2) (since C++11)
std::wstring to_wstring( long long value );
(3) (since C++11)
std::wstring to_wstring( unsigned value );
(4) (since C++11)
std::wstring to_wstring( unsigned long value );
(5) (since C++11)
std::wstring to_wstring( unsigned long long value );
(6) (since C++11)
std::wstring to_wstring( float value );
(7) (since C++11)
std::wstring to_wstring( double value );
(8) (since C++11)
std::wstring to_wstring( long double value );
(9) (since C++11)

将数值转换为 std::wstring

buf 为转换函数的内部缓冲区,足够大以容纳转换结果。

1) 将有符号十进制整数转换为宽字符串,如同通过 std::swprintf(buf, sz, L"%d", value)
2) 将有符号十进制整数转换为宽字符串,如同通过 std::swprintf(buf, sz, L"%ld", value)
3) 将有符号十进制整数转换为宽字符串,如同通过 std::swprintf(buf, sz, L"%lld", value)
4) 将无符号十进制整数转换为宽字符串,如同通过 std::swprintf(buf, sz, L"%u", value)
5) 将无符号十进制整数转换为宽字符串,如同通过 std::swprintf(buf, sz, L"%lu", value)
6) 将无符号十进制整数转换为宽字符串,如同通过 std::swprintf(buf, sz, L"%llu", value)
7,8) 将浮点值转换为宽字符串,如同通过 std::swprintf(buf, sz, L"%f", value)
9) 将浮点值转换为宽字符串,如同通过 std::swprintf(buf, sz, L"%Lf", value)
(直到 C++26)
1-9) 将数值转换为宽字符串,如同通过 std::format(L"{}", value)
(自 C++26 起)

内容

[编辑] 参数

value - 要转换的数值

[编辑] 返回值

一个包含转换值的宽字符串。

[编辑] 异常

可能从 std::bad_allocstd::wstring 构造函数抛出。

[编辑] 示例

#include <iostream>
#include <string>
 
int main()
{
    for (const double f : {23.43, 1e-9, 1e40, 1e-40, 123456789.0})
        std::wcout << "std::wcout: " << f << '\n'
                   << "to_wstring: " << std::to_wstring(f) << "\n\n";
}

输出

std::wcout: 23.43
to_wstring: 23.430000
 
std::wcout: 1e-09
to_wstring: 0.000000
 
std::wcout: 1e+40
to_wstring: 10000000000000000303786028427003666890752.000000
 
std::wcout: 1e-40
to_wstring: 0.000000
 
std::wcout: 1.23457e+08
to_wstring: 123456789.000000

[编辑] 参见

(C++11)
将整数或浮点值转换为 string
(函数) [编辑]