char * 和 wchar*的转换

功能:将宽字符编码字符串转换成多字节编码字符串。 [1]  
头文件:#include <stdlib.h>。
函数原型:
errno_t __cdecl mbstowcs_s(size_t * _PtNumOfCharConverted, wchar_t * _DstBuf, size_t _SizeInWords, const char * _SrcBuf, size_t _MaxCount );
参数说明:[1] 
PtNumOfCharConverted:指向转换后的字符串的长度加上结束符(单位wchar_t);
_DstBuf:指向转换后的字符串首地址;
_SizeInWords:目的地址最大字空间大小(单位wchar_t);
_SrcBuf:源多字节字符串首地址;
_MaxCount:最多可存入宽字符串缓冲中的字符个数,用于裁剪转换后的宽字符串。
返回值:成功返回0, 失败则返回失败代码。



函数功能:将字符串从wchar_t*转换成char*,即从unicode字符转换成多字节字符。
函数原型:errno_t wcstombs_s( size_t *pReturnValue, char *mbstr, size_t sizeInBytes, const wchar_t *wcstr, size_t count );
头文件:
<stdlib.h>
参数说明:
pReturnValue: The number of characters converted. ----- 转换后的多字节字符串的字符数;
mbstr: The address of a buffer for the resulting converted multibyte character string. ----- char类型的字符或字符串的地址 (接收转换后的字符串的缓冲区);
sizeInBytes: The size in bytes of the mbstr buffer. ----- 用来接收转换后字符char类型缓冲区的大小(以字节记);
wcstr: Points to the wide character string to be converted. ----- wchar_t类型的字符串的地址(需要转换的字符串的缓冲区的地址);
count: The maximum number of bytes to be stored in the mbstr buffer ----- 最多可以存入mbstr的字节数。
返回值:
Zero if successful, an error code on failure.
成功返回0, 失败则返回失败代码


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值