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

Acentuação.

Olá, bom dia.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Como resolver?

13 respostas

Boa tarde, você já tentou usar essa função?

setlocale(LC_ALL, "Portuguese");
#include <stdio.h>
#include <locale.h>

int main() {
    setlocale(LC_ALL, "Portuguese");
    printf("Bem-vindo ao nosso jogo de adivinhação");
}

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Então testei aqui e apresentou o mesmo comportamento, consegui imprimir no console da forma correta assim:

int main() {

    wprintf(L"Bem-vindo ao nosso jogo de adivinhação\n");
    system("pause");

    return 0;
}

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

solução!

Desculpa, copiei o código errado, poderia tentar assim na sua Maquina?

int main() {

    setlocale(LC_ALL, "");
    wprintf(L"Bem-vindo ao nosso jogo de adivinhação\n");
    system("pause");

    return 0;
}

@VICTOR WESLEY PAVIA VERDOODT done.

Agora me explica...

rs..

Pelo que eu entendi, o console do Windows por padrão não suporta a codificação de alguns caracteres teoricamente o setlocale era pra resolver isso, e creio que o caractere Ç, tem uma codificação maior que a padrão de um caractere convencional, no caso usando widestring, você pode usar esse tipo de caracteres. talvez exista outra forma de se chegar no mesmo resultado algum SetConsoleOutputCP, que colocaria a codificação certa no console.

https://en.wikipedia.org/wiki/Wide_character

Certo, agora me explica, nesta função como eu coloco?

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
int somar(){
    return 1 + 2.15;
}
int main(){
    int resultado = 0;
    resultado = somar();
    printf("O resultado da função é = %d", resultado);
    return(0);
}
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
int somar(){
    return 1 + 2.15;
}
int main(){
    setlocale(LC_ALL, "");
    int resultado = 0;
    resultado = somar();
    wprintf(L"O resultado da função é = %d\n", resultado);
    system("PAUSE");
    return(0);
}

Certo, vi que incluiu o L e o "pause", rs. sem querer estender pode explicar?

O pause é só pro console não fechar na minha maquina após a execução do código kkk, o L é pra dizer que essa string é uma widestring

Vlw Victor <3 te amo