草庐IT

c++ - 在 Qt 中将 WCHAR 转换为 QString

在Qt中将WCHAR转换为QString。请帮我实现它以完成此转换。 最佳答案 有WCharArray方法是QString的静态成员:http://doc.qt.io/qt-4.8/qstring.html#fromWCharArrayhttp://doc.qt.io/qt-4.8/qstring.html#toWCharArray 关于c++-在Qt中将WCHAR转换为QString,我们在StackOverflow上找到一个类似的问题: https://s

c++ - 你如何将两个 wchar_t* 连接在一起?

我有一个基本wchar_t*并且我希望将另一个附加到末尾。我该怎么做?我无法使用已弃用的函数,因为我将警告视为错误。 最佳答案 为什么不首先使用std::wstring:wchar_t*ws1=foo(),*ws2=bar();std::wstrings(ws1);s+=std::wstring(ws2);std::wcout如果需要,std::wstring::c_str()可让您以constwchar_t*的形式访问结果。 关于c++-你如何将两个wchar_t*连接在一起?,我们在

c++ - 将 int 转换为 const wchar_t*

正如标题所示,我想知道将int转换为constwchar_t*的最佳方法。其实我想用_tcscpy函数_tcscpy(m_reportFileName,myIntValue); 最佳答案 由于您使用的是C方法(我假设m_reportFileName是rawCwchar_t数组),您可能只想直接考虑swprintf_s():#include//forswprintf_s,wprintfintmain(){intmyIntValue=20;wchar_tm_reportFileName[256];swprintf_s(m_reportF

c++ - 为什么要发明 wchar_t?

为什么需要wchar_t?它如何优于short(或__int16或其他)?(如果重要的话:我生活在Windows世界。我不知道Linux为支持Unicode做了什么。) 最佳答案 见Wikipedia.基本上,它是当前语言环境中“文本”的可移植类型(带有变音符号)。它早于Unicode,并没有解决很多问题,所以今天,它主要是为了向后兼容而存在的。除非必要,否则不要使用它。 关于c++-为什么要发明wchar_t?,我们在StackOverflow上找到一个类似的问题:

c++ - 为什么它被称为 'wchar_t' 而不仅仅是 'wchar' ?

我经常想知道为什么C++使用名称wchar_t而不是简单的wchar,但我一直无法找到答案。搜索引擎没有帮助,因为他们认为我在询问Windows的WCHAR类型。有什么想法吗? 最佳答案 这是C的遗留物,其中wchar_t是typedef,而typedef在C标准库中具有该后缀。 关于c++-为什么它被称为'wchar_t'而不仅仅是'wchar'?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/q

c++ - 如何将 wchar_t* 转换为 std::string?

我将类(class)更改为使用std::string(基于我得到的答案here但我有一个函数返回wchar_t*。如何将其转换为std::string?我试过了:std::stringtest=args.OptionArg();但它显示错误C2440:'initializing':cannotconvertfrom'wchar_t*'to'std::basic_string' 最佳答案 std::wstringws(args.OptionArg());std::stringtest(ws.begin(),ws.end());

c++ - Qt、MSVC 和/Zc :wchar_t- == I want to blow up the world

所以Qt在windows上是用/Zc:wchar_t-编译的。这意味着wchar_t不是某些内部类型(我认为是__wchar_t)的typedef,而是unsignedshort的typedef.真正酷的是MSVC的默认设置是相反的,这当然意味着您使用的库很可能是用wchar_t编译的。与Qt的类型不同wchar_t.当然,这不会成为问题,除非您尝试使用std::wstring之类的东西。在您的代码中;特别是当一个或多个库具有接受它作为参数的函数时。实际发生的情况是,您的代码可以愉快地编译,但随后无法链接,因为它正在使用std::wstring查找定义。但它们只包含期望std::wst

c++ - char vs wchar_t vs char16_t vs char32_t (c++11)

据我了解,char可以安全地容纳ASCII字符,而char16_t和char32_t可以安全地容纳unicode中的字符,一个用于16位变体,另一个用于32位变体(我应该说“a”而不是“the”吗?)。但是我想知道wchar_t背后的目的是什么。我应该在新代码中使用该类型,还是只是为了支持旧代码?旧代码中wchar_t的目的是什么,据我所知,如果它的大小不能保证大于char?澄清一下就好了! 最佳答案 char用于8位代码单元,char16_t用于16位代码单元,char32_t用于32位代码单位。这些中的任何一个都可以用于“Uni

c++ - 我想将 std::string 转换为 const wchar_t *

有什么方法吗?我的电脑是AMD64。::std::stringstr;BOOLloadU(constwchar_t*lpszPathName,intflag=0);我用的时候:loadU(&str);VS2005编译器说:Error7errorC2664::cannotconvertparameter1from'std::string*__w64'to'constwchar_t*'我该怎么做? 最佳答案 先转换成std::wstring:std::wstringwidestr=std::wstring(str.begin(),str

c++ - 如何将 wchar_t 值打印到控制台?

例子:#includeusingnamespacestd;intmain(){wchar_ten[]=L"Hello";wchar_tru[]=L"Привет";//Russianlanguagecout此代码仅打印地址等十六进制值。如何打印wchar_t字符串? 最佳答案 编辑:如果您尝试编写无法在默认语言环境中表示的文本,这将不起作用。:-(使用std::wcout代替std::cout。wcout 关于c++-如何将wchar_t值打印到控制台?,我们在StackOverflow