2
respostas

Código FogeFoge erro ao complilar

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

 char** mapa;
 int colunas;
 int linhas;

void lemapa(){

     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);
     alocamapa();

     for (int i = 0; i < linhas; i++){
          fscanf(f, "%s", mapa[i]);
     }
       fclose(f);
}
void alocamapa(){

     mapa = malloc(sizeof(char*) * linhas);

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

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

        lemapa();

        for(int i = 0; i < 5; i++){
            printf(" %s\n", mapa[i]);
        }
        liberamapa();    
    }

Windows PowerShell Copyright (C) Microsoft Corporation. Todos os direitos reservados.

Experimente a nova plataforma cruzada PowerShell https://aka.ms/pscore6

PS C:\Users\Aluno\Desktop\Foge Foge> cd "c:\Users\Aluno\Desktop\Foge Foge" ; if ($?) { gcc foge.c -o foge } ; if ($?) { .\foge } (null) (null) PS C:\Users\Aluno\Desktop\Foge Foge>

Não sei o que pode estar acontecendo

2 respostas

Olá, Alan! Tudo bem?

Como esse é um programa com partes separadas, devemos compilar da seguinte maneira:

gcc mapa.c -o mapa.o
gcc FogeFoge.c -o FogeFoge.o
gcc mapa.o FogeFoge.o -o FogeFoge

Dessa forma conseguimos ter certeza que todas as partes que são necessárias para o programa final foram compiladas antes.

Caso o problema não seja solucionado, estou à disposição.

Abraços!


Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.Bons Estudos!

E que estou usando o visual studio code para desnvolver os erecicios propostos