草庐IT

fshort-wchar

全部标签

c++ - 错误 : cannot convert 'const wchar_t [13]' to 'LPCSTR {aka const char*}' in assignment

//includethebasicwindowsheaderfile#include#include//theWindowProcfunctionprototypeLRESULTCALLBACKWindowProc(HWNDhWnd,UINTmessage,WPARAMwParam,LPARAMlParam);//theentrypointforanyWindowsprogramintWINAPIWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,LPSTRlpCmdLine,intnCmdShow){//thehandleforthew

c++ - 如何将 Wchar_t* 转换为 const char*

这个问题在这里已经有了答案:Howtoconvert'wchar_t*'to'constchar*'(1个回答)关闭9年前。我是c++的新手,同时在windowsCE.netcompact应用程序上工作尝试将六边形数据写入文件时CStringdataBlock1;dataBlock1="";CStringtemp;for(inti=0;i我收到此错误无法将参数1从wchar*转换为constchar*在使用下面的写入函数将六边形数据写入文件时打开out.write(myReader.dataBlock1.GetBuffer(),myReader.dataBlock1.GetLength

c++ - 使用 mbstowcs_s 将 char* 转换为 wchar_t*

我试过将char*转换为wchar_t*,但我在使用mbstowcs时遇到了一些问题,而VisualStudio需要mbstowcs_s...char*port;size_tsize=strlen(port)+1;wchar_t*portName=newwchar_t[size];mbstowcs(portName,port,size);如何将函数更改为mbstowcs_s? 最佳答案 当使用安全方法的修复如此简单时,我不建议禁用安全代码警告,所以你开始吧:constchar*port="8080";size_tsize=strle

c++ - wchar_t 指针

这有什么问题:wchar_t*t=newwchar_t;t="Tony";我想我可以使用一个wchar_t指针作为一个字符串... 最佳答案 您的代码有两个问题。首先,"Tony"是一个指向char字符串的指针。L"Tony"是合适的宽字符串。其次,您通过new分配了单个wchar_t,然后通过将指针重新分配给Tony立即失去对它的跟踪。这会导致内存泄漏。 关于c++-wchar_t指针,我们在StackOverflow上找到一个类似的问题: https://

c++ - 将 WCHAR[260] 转换为 std::string

我在Windows上从(PROCESSENTRY32)pe32.szExeFile获得了一个WCHAR[MAX_PATH]。以下不起作用:std::strings;s=pe32.szExeFile;//compileerror.cast(constchar*)doesntworkeither和std::strings;charDefChar='';WideCharToMultiByte(CP_ACP,0,pe32.szExeFile,-1,ch,260,&DefChar,NULL);s=pe32.szExeFile; 最佳答案 对于

c++ - C++ 中的可移植 wchar_t

C++中有可移植的wchar_t吗?在Windows上,它是2个字节。其他一切都是4个字节。我想在我的应用程序中使用wstring,但如果我决定移植它,这会导致问题。 最佳答案 如果您正在处理程序内部的使用,请不要担心;A类中的wchar_t与B类中的相同。如果您计划在Windows和Linux/MacOSX版本之间传输数据,您需要担心的不仅仅是wchar_t,而且您需要想出处理所有细节的方法。你可以定义一个类型,你将在任何地方定义为四个字节,并实现你自己的字符串等(因为C++中的大多数文本处理都是模板化的),但我不知道这对您的需求

c++ - Windows 上代理项对(BMP 之外的 Unicode 字符)的 wchar_t* 大小

我在Windows8上遇到了一个有趣的问题。我测试过我可以用wchar_t*字符串表示BMP之外的Unicode字符。以下测试代码对我产生了意想不到的结果:constwchar_t*s1=L"a";constwchar_t*s2=L"\U0002008A";//The"Han"characterinti1=sizeof(wchar_t);//i1==2,thesizeofwchar_tonWindows.inti2=sizeof(s1);//i2==4,becauseoftheterminating'\0'(Iguess).inti3=sizeof(s2);//i3==4,why?U+

c++ - 如何将 char 字符串转换为 wchar_t 字符串?

我有一个char*格式的字符串,想将其转换为wchar_t*,以传递给Windows函数。 最佳答案 这个小功能有帮助吗?#includeintmbstowcs(wchar_t*out,constchar*in,size_tsize);另见C++reference 关于c++-如何将char字符串转换为wchar_t字符串?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1791

c++ - 找不到“wchar.h”文件

我知道这个问题:macOS'wchar.h'FileNotFound但这对我没有帮助。我试过重新安装xcode,重新安装命令行工具,重新启动系统。wchar.h文件已就位,但编译器无法找到它。我还能尝试什么?也许它与sysroot相关?有什么办法可以解决这个问题吗?macbooks-MacBook-Pro:Rackeuphorbium$sudomakec++-Iinclude-Idep/include-Idep/lib/libzip/include-DVERSION=dev-MMD-O3-march=core2-ffast-math-g-Wall-DARCH_MAC-isysroot/

C++ - 将 wchar_t 转换为网络字节并返回

主要原因是因为我通过套接字发送Unicode数据(字节,而不是字符),并且我想确保字节顺序匹配,因为wchar_t是UTF16。接收程序也是我的另一个,所以我会知道它是UTF16并能够做出相应的react。这是我目前使用的算法,但结果很奇怪。(这是在同一个应用程序中,因为我想在发送之前学习如何转换它)caseWM_CREATE:{//ConvertStringtoNetworkBytewchar_tData[]=L"Thisisastring";char*DataA=(char*)Data;unsignedshortuData=htons((unsignedint)DataA);//C