Lors de la tentative de sortie de caractères Unicode sur la console Windows à l'aide de cout en C , des caractères étranges sont affichés à la place. Pourquoi cela se produit-il et est-il possible d'afficher correctement les caractères Unicode ?
Le problème vient du comportement par défaut de la console Windows, qui ne gère pas les sorties Unicode. Pour résoudre ce problème, le flux de sortie en caractères larges std::wcout peut être utilisé à la place de cout.
#include <iostream> int main() { std::wcout << L"Hello World!" << std::endl; return 0; }
Cependant, même avec std::wcout, la console peut toujours ne pas gérer les sorties Unicode. Pour résoudre ce problème, la console peut être configurée manuellement.
Pour configurer manuellement la console :
Une autre solution consiste à utiliser _setmode(_fileno(stdout), _O_U16TEXT);. Cette fonction nécessite l'inclusion de fcntl.h et io.h et permet au flux de sortie de gérer les caractères Unicode.
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!