2
respostas

Como resolver esse problema do UTF-8 todo bugado no C? (uso o Visual Studio Code)

Consegui fazer uma gambiarra abrindo o arquivo no bloco de notas e mudando o encode dele pra ANSI, funciona no .exe mas se eu altero o texto no VSCode volta o bug.

Qual a forma "decente" de resolver isso sem fazer essas gambiarras?

Segue meu código:

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>

int main() {
    setlocale(LC_ALL, "Portuguese");

    printf("**************************************\n");
    printf("* Bem vindo ao nosso jogo de adivinhação *\n");
    printf("**************************************\n");
}
2 respostas

Felizmente no meu caso não preciso usar nem o <locale.h> porque uso o terminal do linux, mas nunca testei isso no windows, mas fui pesquisar a respeito, até porque não quero que um executável meu para windows dê no mesmo problema.

Você certificou que seu windows locale está em pt?

Já tentou mudar o codepage da saída do console por chcp?

A sua fonte utilizada no console pelo VSCode possui esses caracteres?

Eu tou começando a achar que isso é um problema no terminal do VSCode, depois vou testar usando o terminal do windows pra ver como ele reage.

Só preciso voltar a ter um tempo pra terminar as aulas de C e C++, até agora achando divertida a linguagem... ao menos ta sendo mais interessante que umas coisas que vi sobre Python.