Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Não aparece acentuação no console do Windows

Eu coloco acentuação no comando printf mas não aparece acentuação no console do Windows

5 respostas
solução!

Dimas, boa tarde!

Você pode usar o <locale.h>.

O locale.h define as configurações específicas de local, como formatos de data e símbolos de moeda.

Um exemplo de uso seria

#include <stdio.h>
#include <stdlib.h>
#include <locale.h> //necessário para usar setlocale

int main(void) {
    printf("\n****** Verificando a localidade corrente ********\n\n");
    printf ("Localidade corrente: %s\n", setlocale(LC_ALL,NULL) );
    printf("Não é possível usar acentuação ou ç corretamente…\n\n");

    printf("\n****** Alterando para a localidade do sistema ********\n\n");

    //alterando para o padrão do sistema operacional
    printf("A localidade corrente agora é %s \n",setlocale(LC_ALL,""));
    printf("Agora não tem mais problema algum!\n");
    printf("Já posso usar acentuação e também o caracter ç…\n\n\n");

    system("pause");
    return 0;
    }

Espero ter ajudado e bons estudos!

Olá Dimas!

Por padrão o código não é compilado em UTF-8. Para contornar este problema precisamos dizer que as strings serão neste novo padrão.

Adicione a biblioteca #include <locale.h>, depois disso, no seu método main, inclua o método para aceitar esses caracteres: setlocale(LC_ALL,"portuguese");

// bibliotecas
#include <locale.h>

int main()
{
    setlocale(LC_ALL,"portuguese");
// restante do código.
}

Clique aqui para mais informações.

Espero ter ajudado! Bons estudos!

Fala Dimas, beleza?

Conseguiu resolver seu problema?

Obrigado pessoal! Problema resolvido.

Boa Dimas, vou fechar o tópico :)