c++ - ¿Cómo puedo imprimir los valores wchar_t en la consola?
string wchar-t (5)
Ejemplo:
#include <iostream>
using namespace std;
int main()
{
wchar_t en[] = L"Hello";
wchar_t ru[] = L"Привет"; //Russian language
cout << ru
<< endl
<< en;
return 0;
}
Este código solo imprime valores HEX como dirección. Cómo imprimir la cadena wchar_t?
¿Puedo sugerirle std::wcout
?
Entonces, algo como esto:
std::cout << "ASCII and ANSI" << std::endl;
std::wcout << L"INSERT MULTIBYTE WCHAR* HERE" << std::endl;
Puede encontrar más información en una pregunta relacionada here .
Editar: Esto no funciona si está intentando escribir texto que no se puede representar en su configuración regional predeterminada. :-(
Use std::wcout
lugar de std::cout
.
wcout << ru << endl << en;
Puede utilizar una matriz de caracteres normal que en realidad está llena de caracteres UTF-8. Esto debería permitir mezclar caracteres en todos los idiomas.
no estamos buscando maneras fáciles!
int i = 0;
while (ru[i]) {
std::cout << (char)ru[i];
i++;
}
#include <iostream>
using namespace std;
void main()
{
setlocale(LC_ALL, "Russian");
cout << "/tДОБРО ПОЖАЛОВАТЬ В КИНО!/n";
}