Namespaces
Variants

std:: to_wstring

From cppreference.net
std::basic_string
定义于头文件 <string>
std:: wstring to_wstring ( int value ) ;
(1) (C++11 起)
std:: wstring to_wstring ( long value ) ;
(2) (C++11 起)
std:: wstring to_wstring ( long long value ) ;
(3) (C++11 起)
std:: wstring to_wstring ( unsigned value ) ;
(4) (C++11 起)
std:: wstring to_wstring ( unsigned long value ) ;
(5) (C++11 起)
std:: wstring to_wstring ( unsigned long long value ) ;
(6) (C++11 起)
std:: wstring to_wstring ( float value ) ;
(7) (C++11 起)
std:: wstring to_wstring ( double value ) ;
(8) (C++11 起)
std:: wstring to_wstring ( long double value ) ;
(9) (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_alloc std::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
(函数)