mbstowcs()与MultiByteToWideChar()的一点区别

原创 2004年10月26日 14:40:00
mbstowcs()是MultiByteToWideChar()的简化版,除了参数少了,本来以为参数少了一些,并不会影响使用,今天却发现了它的一个小问题,在中文字符的转换上,前者似乎无法对中文字符进行处理,转换后显示成乱码,而后者则不会。看来以后还是不能太偷懒了。我开始一直嫌后者的参数太多,麻烦,不愿意用,甚至想用A2OLE()宏来处理,可惜这个好东东不能在普通win32程序中使用。呵呵。

代码:
WCHAR strPath[MAX_PATH];
CHAR buf[] =  “i am 中国人”;

// 简化版对中文字符的转换不好
 //  mbstowcs( strPath, buf, MAX_PATH );
 // 还是这个比较好
 MultiByteToWideChar(CP_ACP, 0, buf, strlen(buf), strPath, MAX_PATH );

mbstowcs 和 wcstombs

本文介绍两个由C语言提供的宽字符(wchar_t类型)和多字节字符( 一个字符用一个或者多个字节表示) 转换函数,因此具有通用性(在Windows/Linux系统中都可以使用): 所需头文件:std...
  • abcd1f2
  • abcd1f2
  • 2014年12月30日 21:42
  • 1536

wcstombs和mbstowcs使用

本题转自:http://www.cppblog.com/fwxjj/archive/2010/05/25/116305.html mbs: multi byte string, 用char作为存储类型...
  • fengbangyue
  • fengbangyue
  • 2010年07月02日 13:03
  • 5532

汉字to unicode && mbstowcs编辑

1 2 3 4 5 6 7 8 #include  #include    int main() {         wchar_t h[]=L"你好";         printf("%X%...
  • middilestep
  • middilestep
  • 2015年03月02日 11:06
  • 318

mbstowcs and MultiByteToWideChar

最近在vs2005 中进行TCP/IP 编成的时候遇到了一些问题,最终这些问题都迎刃而解 :           TCHAR *wBuff=new TCHAR[256];           mems...
  • guanchanghui
  • guanchanghui
  • 2006年09月14日 18:38
  • 3084

setlocale同mbstowcs函数的关系(ZZ)

setlocale同mbstowcs函数的关系程序中,如果要将ASCII码字符串转换为宽字符(Unicode),可以利用标准C的mbstowcs函数。 微软在MSDN中有示例,如下: 然而,这段代码...
  • sptoor
  • sptoor
  • 2009年12月23日 21:57
  • 3105

linux没有WideCharToMultiByte,MultiByteToWideChar,我们通常...

Linux下面的没有命名为 WideCharToMultiByte() 和 MultiByteToWideChar() 函数,WideCharToMultiByte,MultiByteToWideCh...
  • yiyaaixuexi
  • yiyaaixuexi
  • 2011年02月08日 23:07
  • 20453

linux没有WideCharToMultiByte,MultiByteToWideChar 相应的处理

Linux下面的没有命名为 WideCharToMultiByte() 和 MultiByteToWideChar() 函数,WideCharToMultiByte,MultiByteToWideCh...
  • educast
  • educast
  • 2013年10月20日 08:55
  • 2142

Linux 多字节与宽字符的相互转化(类似MultiByteToWideChar和WideCharToMultiByte)

Linux下面的没有命名为 WideCharToMultiByte() 和 MultiByteToWideChar() 函数,WideCharToMultiByte,MultiByteToWideCh...
  • zfk198687
  • zfk198687
  • 2012年07月19日 14:34
  • 1174

mbstowcs_s实现wchar_t转成char

把char*转换为wchar_t* 用stdlib.h中的mbstowcs_s函数,可以通过下面的例子了解其用法:   char*CStr = "string to convert"; siz...
  • ghevinn
  • ghevinn
  • 2013年08月08日 00:38
  • 7792

mbstowcsz 转化引起 中文乱码问题

用 wtl Cstring 中的转化函数解决 static int __cdecl _mbstowcsz(wchar_t* wcstr, const char* mbstr, size_t count...
  • newkey007
  • newkey007
  • 2005年02月14日 00:09
  • 2326
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:mbstowcs()与MultiByteToWideChar()的一点区别
举报原因:
原因补充:

(最多只允许输入30个字)