如何连接两个char? char str[80],*number="27865412"; strcpy_s (str,"number: "); strcat_s (str,number); puts (str); ::MessageBoxW (this->m_hWnd ,LPCWSTR(str),_T("文件夹"),MB_OK);为什么MessageBox 显示的是乱码?编译环境:vc++ 2005 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 字符编码问题,ANSI还是Unicode? ::MessageBoxA (this->m_hWnd ,str,"文件夹",MB_OK);这样试试,把一个ASCII的字符字符转成UNICODE不行的. MessageBoxW 需要的是Unicode字符 你给它的是ANSI字符 如果你一定要用 ::MessageBoxW 的话先搞个 unsigned short wCh[200] 出来然后 MultiByteToWideChar 转成 一个 真正是 UNICODE 的 wCh ,再传给 MessageBoxW ::MessageBoxW (this->m_hWnd ,LPCWSTR(str),_T("文件夹"),MB_OK);-->::MessageBox (this->m_hWnd ,str,"文件夹",MB_OK); 用DLGBASE的测了一下. char str[80],*number="27865412"; strcpy (str,"number: "); strcat (str,number); //puts (str); unsigned short wCh[200]; int iLen = strlen(str); MultiByteToWideChar(CP_ACP,0,str,iLen,wCh,iLen); wCh[iLen] = 0; ::MessageBoxW (this->m_hWnd ,wCh,L"文件夹",MB_OK);这样可以转过去显示的. MessageBoxW 要求宽字符你前面定义的字符是 char 属于多字节字符二者之间不能通过强制转换来进行你可以用 CString str和 CStringA stra ;str = stra 来进行二者之间的转换 MFC框架怎么用32位真彩的ToolBar? 线程和接收函数之间的参数问题 socket服务端如何保留客户端的信息? c++,C#,Java软件开发群21682942,不要求技术,高手欢迎近来讨论 界面问题---菜单栏的着色 DAO+ACCESS2000+VC6.0问题求高手帮忙 关于带图标的菜单的实现,求助?? 100分急问,马上给分! 怎么样让CDigloag响应WM_KEYDOWN消息呀 请问如何解决高分辨率下开发基于对话框的MFC在低分辨率下出现对话框过大问题。 大家帮忙,请教一个问题。 在VC中如何动态生成静态文本(个数不定)
先搞个 unsigned short wCh[200] 出来
然后 MultiByteToWideChar 转成 一个 真正是 UNICODE 的 wCh ,再传给 MessageBoxW
-->
::MessageBox (this->m_hWnd ,str,"文件夹",MB_OK);
strcpy (str,"number: ");
strcat (str,number);
//puts (str); unsigned short wCh[200];
int iLen = strlen(str);
MultiByteToWideChar(CP_ACP,0,str,iLen,wCh,iLen);
wCh[iLen] = 0;
::MessageBoxW (this->m_hWnd ,wCh,L"文件夹",MB_OK);这样可以转过去显示的.
你前面定义的字符是 char 属于多字节字符
二者之间不能通过强制转换来进行
你可以用 CString str
和 CStringA stra ;
str = stra 来进行二者之间的转换