2
respostas

[Dúvida] No VSCode as linhas e colunas ficam zeradas

Boa noite gente. Por algum motivo, quando compilo o código no VSCode as linhas e colunas ficam zeradas como visto abaixo. Também é possível ver que ao alocar ele me da o endereço de memória ao invés do resultado. Porém, quando compilo no compilador do PC ele funciona normalmente e aparece linhas 5 e colunas 10,porém continua me dando o endereço de memória no lugar do resultado(linha abaixo do linhas 0 e colunas 0)

código:

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

 char** mapa;
 int linhas;
 int colunas;

int main() {
    

   FILE* f;
   f = fopen("mapa.txt", "r");
    if(f == 0) {
        printf("Erro na leitura do mapa\n");
        exit(1);
    }

    fscanf(f, "%d %d", &linhas, &colunas);
    printf("linhas %d colunas %d\n", linhas, colunas);

    mapa = malloc(sizeof(char*) * linhas);
    for(int i = 0; i < linhas; i++) {
        mapa[i] = malloc(sizeof(char) * (colunas + 1));

    }
    for(int i = 0; i < 5; i++) {

        fscanf(f, "%s", mapa[i]);
    }

    for(int i = 0; i < 5; i++) {

        printf("%s\n", mapa[i]);
    }

    fclose(f);

    for(int i = 0; i < linhas; i++) {
        free(mapa[i]);
    }
    free(mapa);

}

mapa.txt:

5 10
|--------|
|...|..-.|
|..-|.@..|
|......-.|
|--------|

imagem:

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

2 respostas

E aí, Lucas! Beleza?

Então, sobre esse lance do VSCode, eu já passei por algo parecido. Parece que as linhas e colunas tão meio doidas quando você compila, né?

Primeiro, dá uma olhada no seguinte: no VSCode, quando você compila, as linhas e colunas aparecem zeradas, mas quando você compila no PC direto, elas tão de boa, certo? E também, rola essa parada estranha de mostrar o endereço de memória em vez do resultado. Sacanagem!

Eu tava pensando aqui, será que o VSCode tá interpretando alguma coisa de um jeito diferente? Tipo, será que o formato do arquivo "mapa.txt" tá de acordo com o que o VSCode espera? Às vezes, rola alguma diferença na interpretação.

Outra coisa que me veio à mente é dar uma conferida nas configurações do compilador no VSCode. Às vezes, ele tá usando alguma config padrão que tá meio fora do trilho.

Dá uma olhada nessas coisas e vê se alguma delas resolve. Se não, a gente continua cavando pra achar a solução desse mistério! Abraço!

Pois é, quando eu compilo no PC direto o código está funcionando perfeitamente, inclusive testei ele rodando no Replit e também funciona igual. O problema está no meu VSCode mesmo. Não consegui resolver para que ele compile direito, apenas consegui chegar no resultado esperado compilando de outras formas.