1
resposta

Erro na copilação

Galera meu copilador está apresentando um erro, mas não diz a linha onde esse erro possa está. meu código está assim:

#include <stdio.h>

#include <stdlib.h>

#include "fogefoge.h"

#include "mapa.h"

MAPA m; POSICAO heroi;

int acabou() { return 0; }

void move(char direcao) {

m.matriz[heroi.x][heroi.y] = '.';

switch(direcao) {
    case 'a':
        m.matriz[heroi.x][heroi.y-1] = '@';
        heroi.y--;
        break;
    case 'w':
        m.matriz[heroi.x-1][heroi.y] = '@';
        heroi.x--;
        break;
    case 's':
        m.matriz[heroi.x+1][heroi.y] = '@';
        heroi.x++;
        break;
    case 'd':
        m.matriz[heroi.x][heroi.y+1] = '@';
        heroi.y++;
        break;
}

}

int main() {

lemapa(&m);
encontramapa(&m, &heroi, '@');

do {
    imprimemapa(&m);

    char comando;
    scanf(" %c", &comando);

    move(comando);

} while (!acabou());

liberamapa(&m);

O erro que aparece é esse:[Error] ld returned 1 exit status. Além disso o meu compilador apresenta essas mensagens: fogefoge.c:(.text+0x1c7): undefined reference to lemapa' fogefoge.c:(.text+0x1e6): undefined reference toencontramapa' fogefoge.c:(.text+0x1f5): undefined reference to imprimemapa' fogefoge.c:(.text+0x22e): undefined reference toliberamapa' Alguém por favor poderia me ajudar?

1 resposta

Boa noite, preciso de mais informações, por exemplo onde estão os arquivos que vocês está dando "include". A minha leitura sobre os erros descritos é que ele não está encontrando as funções que você está utilizando dos includes "(#include "mapa.h" ) e ( #include "ui.h" ). No código que você postou não tem o include do "ui.h" e o do "mapa.h" verifica se o mapa.h e mapa.c estão na mesma pasta que o seu "fogefoge.c"

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software