Maison >développement back-end >C++ >Comment puis-je afficher correctement les caractères Unicode dans l'invite de commande Windows à l'aide de C ?

Comment puis-je afficher correctement les caractères Unicode dans l'invite de commande Windows à l'aide de C ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-08 17:42:12631parcourir

How Can I Display Unicode Characters Correctly in the Windows Command Prompt Using C  ?

Sortir Unicode vers la console à l'aide de C sous Windows : un guide complet

Comprendre le comportement par défaut

Dans le code C fourni, les caractères comme ĐĄßĞĝ ne s'affichent pas correctement car l'invite de commande Windows (cmd) par défaut ne gère pas les sorties Unicode. Cela entraîne l'affichage de caractères étranges à la place.

Flux de caractères larges : std::wcout

Pour afficher les caractères Unicode, il est recommandé d'utiliser les caractères larges standard. flux de sortie, std::wcout. Les flux de caractères larges utilisent des caractères Unicode 16 bits, ce qui permet d'afficher une gamme plus large de caractères.

Configuration de la console pour la sortie Unicode

Même avec std : wcout, la sortie Unicode peut ne pas s'afficher correctement par défaut. Pour résoudre ce problème, vous pouvez configurer manuellement la console pour la sortie Unicode.

  1. Utilisation de l'argument /u lors du démarrage de cmd : Cela démarre une console compatible Unicode.
  2. Appel de chcp 65001 : Cela modifie le format de sortie en UTF-8, qui prend en charge Unicode caractères.
  3. Définition d'une police Unicode dans la console : Windows a des polices Unicode intégrées telles que Lucida Console Unicode.

fcntl.h et l'approche _setmode()

_setmode(_fileno(stdout), _O_U16TEXT); est une autre méthode pour activer la sortie Unicode. Cependant, cette approche nécessite l'inclusion de fcntl.h et io.h.

Conclusion

En utilisant des flux de caractères larges (std::wcout) et en configurant la console pour la sortie Unicode, vous pouvez afficher avec succès les caractères Unicode, tels que ĐĄßĞĝ, dans l'invite de commande Windows. Ces méthodes fournissent une solution robuste pour générer des caractères Unicode dans les applications C.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn