📜  C++ mbstowcs()

📅  最后修改于: 2020-09-25 08:55:40             🧑  作者: Mango

在C++中mbstowcs() 函数转换为多字节字符 的字符串以等效宽字符序列。

mbstowcs() 函数在头文件中定义。

mbstowcs()原型

size_t mbstowcs (wchar_t* dest, const char* src, size_t max);

mbstowcs() 函数采用三个参数并返回一个整数值。

该函数将多字符 字符串 ,其第一元件通过指出src其广泛的字符表示(wchar_t类型的值)。

结果存储在dest指向的存储位置。参数max表示要转换的最大多字节字符数。

转换机制与mbtowc()相同,只是mbtowc转换状态不受影响。如果发生以下情况,转换将停止:

mbstowcs()参数

mbstowcs()返回值

示例:mbstowcs() 函数如何工作?

#include 
#include 
using namespace std;

int main()
{
    char src[] = "\xc4\xe3\xba\xc3";
    wchar_t dest[10];
    int num;

    num = mbstowcs(dest, src, MB_CUR_MAX);
    cout << "Number of wide character converted = " << num << endl;
    wcout << "Wide Character String = " << dest << endl;

    return 0;
}

运行该程序时,可能的输出为:

Number of wide character converted = 1
Wide Character String = ─