Dans un projet XCode, si j'utilise std::cout
pour écrire sur la console, la sortie est correcte. Toutefois, si j'utilise std::wcout
, je n'obtiens aucune sortie. Je sais que c'est un problème épineux en C++, et j'ai essayé de trouver une solution spécifique dans le cas de XCode. Quelques choses que je trouve qu'il a été suggéré devrait fonctionner Étiez:std :: wcout à la fenêtre de console dans XCode
std::cout.imbue(std::locale(""));
et
std::setlocale(LC_ALL, "");
Aucun de ceux-ci ont fait une différence. Avant que je me résigne à passer les deux prochaines semaines à étudier l'API des facettes juste pour pouvoir écrire sur la console, j'ai pensé que je vérifierais avec l'auditeur estimé ici.
[Mise à jour]
Je pense que la raison du problème que j'ai eu est en fait à voir avec le codage spécifique de certaines des chaînes que je suis en train d'imprimer.
Si j'envoie juste un littéral de chaîne, en utilisant le L"my string" syntax
cela fonctionne! Il semble que ce soit en utilisant UTF32 - petit codage endian.
Cependant, je l'ai mélangé avec des chaînes que j'ai été passé du code Objective C++ en utilisant le codage NSUTF32BigEndianStringEncoding. C'est ce mélange d'encodages qui cause les problèmes.
Je pense que nous pouvons considérer cette question comme close. Merci d'avoir lu.
Merci pour la réponse. Je pense avoir trouvé la raison de mes problèmes - mettre à jour ma question maintenant ... – philsquared