3
respostas

Já utilizei o "setlocale", e o meu cmd do windows não mostra os caracteres ç e ~.

Ao utilizar esse comando nada se alterou no meu prompt, e continua com essa frase: "Bem vindo ao jogo de advinhação". Sou iniciante e acabei de começar o curso c e não sei como resolver isso. Já chequei nas outras postagens e não encontrei resolução.

3 respostas

Boa tarde! Não fiz o curso mas já trabalhei muito com C e C++ e direto tinha esses problemas. Pra ficar mais fácil vou deixar um link aqui do stack overflow com o pessoal discutindo sobre esse problema. https://pt.stackoverflow.com/questions/112263/como-resolver-problemas-de-acentua%C3%A7%C3%A3o-ao-usar-a-fun%C3%A7%C3%A3o-setlocale

Isso acontece por que o "locale" do programa depende de uma codificação interna da acentuação (qual o código do caractere "ç"? No terminal do Ubuntu vai ser um, no terminal (cmd) do Windows vai ser outro, e numa janela gráfica no mesmo Windows vai ser um terceiro valor). Na faculdade, quando estávamos escrevendo projeto final da disciplina, a professora sempre pedia para não usarmos, pois sempre dava problema quando ela executava no Ubuntu, e nós fazíamos o código em C++.

O que talvez possa ajudar é colocar aspas duplas no set locale, caso não tenha colocado. setLocale(LC_ALL," ");