在一个XCode项目中,如果我使用std::cout
来写入控制台,输出很好。std :: wcout到XCode的控制台窗口
但是,如果我使用std::wcout
我没有输出。
我知道这是C++中的一个棘手问题,我一直在使用Google搜索以在XCode案例中寻找特定的解决方案。一对夫妇的事情,我发现,有人建议应该进行的工作:
std::cout.imbue(std::locale(""));
和
std::setlocale(LC_ALL, "");
这些都不作出任何区别。在我辞职之前,我花了接下来的几个星期研究API方面的知识,以便能够写入控制台,我想我会在这里检查尊敬的听众。
[更新]
我觉得我一直有这个问题的原因其实是一些我想要打印的字符串的特定编码做。
如果我只发送一个字符串文字,使用L"my string" syntax
它的作品!看来这是使用UTF32 - 小端编码。
但是,我一直在使用NSUTF32BigEndianStringEncoding编码将这个与我从Objective C++代码传递过来的字符串混合在一起。这是导致问题的编码混合。
我想我们可以考虑关闭这件事。谢谢阅读。
感谢您的答复。我想我已经找到了我的问题的原因 - 现在更新我的问题... – philsquared 2008-11-09 16:21:42