C语言 <stdlib.h> mbtowc 函数
-
描述
C库函数int mbtowc(whcar_t *pwc, const char *str, size_t n)将多字节序列转换为宽字符。 -
声明
以下是mbtowc函数的声明。int mbtowc(whcar_t *pwc, const char *str, size_t n)
参数- pwc-这是指向wchar_t类型的对象的指针。
- str-这是指向多字节字符的第一个字节的指针。
- n-这是要检查的字符长度的最大字节数。
-
返回值
- 如果str不为NULL,则mbtowc()函数返回从str开始的已消耗字节数;如果s指向空字节,则返回0;如果失败则返回-1。
- 如果str为NULL,则如果编码具有非平凡的移位状态,则mbtowc()函数返回非零;如果编码为无状态,则mbtowc()函数返回零。
示例以下示例显示mbtowc函数的用法-
尝试一下#include <stdio.h> #include <stdlib.h> #include <string.h> int main () { char *str = "This is cainiaoya.com"; wchar_t mb[100]; int len; len = mblen(NULL, MB_CUR_MAX); mbtowc(mb, str, len*strlen(str) ); wprintf(L"%ls \n", mb ); return(0); }
让我们编译并运行上面的程序,它将产生以下结果,该结果将以多字节形式输出,即一种二进制输出。???