Fórum Caracteres especiais em C #604902
26/08/2019
0
Olá, tudo bem?
Estou iniciando agora no mundo da programação, lendo um pouco aqui e um pouco ali...
Hoje me deparei com um problema, no exercício básico de Olá Mundo!
o caractere "á" não estava aparecendo quando rodava o programa, procurei algumas soluções na internet e encontrei o #include<locale.h> e ficou assim:
Porém não funcionou, Coloquei (LC_SLL, ""), com aspas vazias, troquei o Portuguese por portuguese, pt-br, portuguese-brazilian, etc... e nada deu certo.
Em outro site encontrei um jeito diferente e ficou assim:
Desse jeito deu certo, o cmd reproduziu o "á" do Olá Mundo!
Porém, não encontrei nada sobre o porque dessa maneira funciona, alguém sabe me explicar o por que?
Acho que minha dúvida, também pode ser a de outro, e essa maneira de reproduzir os caracteres especiais também pode ajudar alguém
Obs: Estou usando o Visual Studio Code, com as extensões para C/C++
Muito obrigado!
Estou iniciando agora no mundo da programação, lendo um pouco aqui e um pouco ali...
Hoje me deparei com um problema, no exercício básico de Olá Mundo!
o caractere "á" não estava aparecendo quando rodava o programa, procurei algumas soluções na internet e encontrei o #include<locale.h> e ficou assim:
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
int main ()
{
setlocale(LC_ALL, "Portuguese");
printf ("Olá Mundo! \\\\\\\\n");
system ("pause");
return 0;
}
Porém não funcionou, Coloquei (LC_SLL, ""), com aspas vazias, troquei o Portuguese por portuguese, pt-br, portuguese-brazilian, etc... e nada deu certo.
Em outro site encontrei um jeito diferente e ficou assim:
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
int main ()
{
UINT CPAGE_UTF8 = 65001;
UINT CPAGE_DEFAULT = GetConsoleOutputCP();
SetConsoleOutputCP(CPAGE_UTF8);
printf ("Olá Mundo! \\\\\\\\n");
system ("pause");
return 0;
}
Desse jeito deu certo, o cmd reproduziu o "á" do Olá Mundo!
Porém, não encontrei nada sobre o porque dessa maneira funciona, alguém sabe me explicar o por que?
Acho que minha dúvida, também pode ser a de outro, e essa maneira de reproduzir os caracteres especiais também pode ajudar alguém
Obs: Estou usando o Visual Studio Code, com as extensões para C/C++
Muito obrigado!
Guilherme Gois
Curtir tópico
+ 0
Responder
Posts
26/08/2019
Guilherme Gois
Obs: No meu código, não coloquei aquele monte de \\\\\\\\\\
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)