c/c++,windows中各种字符的转换

来源:互联网 发布:知乎 邮箱 编辑:程序博客网 时间:2024/04/28 16:10

————作才个人见解,仅作参考————

每次碰到char, wchar, CString, BSTR, std::string等等一系列字符时,只关系到字符匹配问题,我都要重新查资料,头疼。所以在此记录碰到的关于字符,字符转换的经验。

一、多字节与宽字节

c/c++中有两种字符类型,char和wchar_t。

1. 多字节转向宽字节

C运行库提供mbstowcs函数实现转换,函数原型是:

size_t mstowcs(wchar_t* Dest, const char* Source, size_t Max_count)
此函数是不安全的,如果Dest缓冲区的大小不足以存储Source,则会溢出(依赖于Max_count的大小)。

另有安全版本mbstowcs_s

参考:

1. 《Windows核心编程》

原创粉丝点击