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

A volta dos que não foram: terminal não mostrando acentos no Windows

Fiz os 3 cursos de C ignorando isso depois de tentar mil coisas diferentes e nada resolveu o problema dos caracteres que o terminal não consegue exibir. Só de escrever "adivinhação" aqui já deu problema com o ç e o ã.

Com o C++ tem uma forma diferente de tentar resolver isso? Rodei o .exe aqui pelo terminal do VSCode e o prompt do Windows, ambos não exibiram corretamente.

2 respostas

Olá Alves

Faz a inclusão do arquivo de cabeçalho chamado <locale.h> Após incluir, poderá setar a linguagem padrão do sistema operacional, usando:

setlocale(LC_ALL, "");

Sintaxe: setlocale(int categoria, const char *local) onde: -categoria é a categoria a ser modificada ou consultada. -local é uma string que corresponde a localidade que atribuirá a categoria.

Poderiamos utilizar setlocale(LC_ALL, "Portuguese"); mas dependeria também do sistema operacional... Exemplo: no Windows 7 e 8, a localidade brasileira é: “Portuguese_Brasil.1252”. No Linux devemos usar “pt_BR_utf8”.

Deixe o local "" vazio para o sistema operacional utilizar a linguagem corrente.

Valeu!

solução!

Opa!

Então nesse tempo meio que achei uma gambiarra aqui pra resolver. Inclusive fica a dica pra quem tiver o mesmo problema.

Estou usando o Windows 10 e o Powershell como terminal (integrado no VSCode), só isso.

Eu adicionei essa biblioteca mas não sei até onde ela serviu de alguma coisa .

#include <locale.h>

int main() {
  setlocale(LC_ALL, "Portuguese_Brasil");
}

O pulo do gato pra fazer essa desgraça funcionar como deveria foi escrever esse comando aqui no terminal:

chcp 65001

Depois disso começa a aparecer os caracteres do UTF-8 como deveria, mas cada vez que abrir o terminal tem que usar esse comando denovo. Não é o ideal mas... é o que tem pra hoje.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software