C++ caractères unicode impression

J'ai besoin d'imprimer des caractères unicode sur le terminal Linux à l'aide de iostream. Des choses étranges se passent bien. Quand j'écris:

cout << "\u2780";

J'obtiens: , qui est presque exactement ce que je veux. Cependant, si j'écris:

cout << '\u2780';

J'obtiens: 14851712.

Le problème est, je ne sais pas exactement quel caractère pour être imprimé au moment de la compilation. C'est pourquoi j'aimerais faire quelque chose comme:

int x;
//some calculations...
cout << (char)('\u2780' + x);

Qui imprime: . À l'aide de wcout ou wchar_t au lieu de cela ne fonctionne pas non plus. Comment puis-je obtenir une impression correcte?

De ce que j'ai trouvé sur l'Internet, il semble important que j'utilise g++ 4.7.2 compilateur directement à partir de Debian Wheezy référentiel.

utilisez wchar_t avec l'opérateur L ? poste ton code complet si possible ou une [sscce.org](SSCCE)
Si vous ne voulez pas salir avec les codages Unicode, vous pouvez utiliser une table pour les chaînes de valeurs possibles de x plutôt que de l'ajouter.
Double Possible de Comment faire pour imprimer des caractères Unicode en C++?

OriginalL'auteur Sventimir | 2013-06-05