当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C语言 wcstombs()用法及代码示例



描述

C库函数size_t wcstombs(char *str, const wchar_t *pwcs, size_t n)转换宽字符串pwcs到多字节字符串开始str。最多n字节被写入str

声明

以下是 wcstombs() 函数的声明。

size_t wcstombs(char *str, const wchar_t *pwcs, size_t n)

参数

  • str- 这是指向至少 n 字节长的 char 元素数组的指针。

  • pwcs- 这是要转换的宽字符串。

  • n- 这是要写入 str 的最大字节数。

返回值

此函数返回转换并写入 str 的字节数(非字符数),不包括结尾的 null-character。如果遇到无效的多字节字符,则返回 -1 值。

示例

下面的例子展示了 wcstombs() 函数的用法。

#include <stdio.h>
#include <stdlib.h>

#define BUFFER_SIZE 50

int main () {
   size_t ret;
   char *MB = (char *)malloc( BUFFER_SIZE );
   wchar_t *WC = L"http://www.tutorialspoint.com";

   /* converting wide-character string */
   ret = wcstombs(MB, WC, BUFFER_SIZE);
   
   printf("Characters converted = %u\n", ret);
   printf("Multibyte character = %s\n\n", MB);
   
   return(0);
}

让我们编译并运行上面的程序,将产生以下结果 -

Characters converted = 29
Multibyte character = http://www.tutorialspoint.com

相关用法


注:本文由纯净天空筛选整理自 C library function - wcstombs()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。