El codigo del main.c es este:
Código:
Como podeis ver hago un #include "Cargador.h" que es otro archivo donde tengo el resto del codigo.#include <stdio.h> // La libreria de entrada/salida #include <stdlib.h> // La libreria estandar de C #include <string.h> // La libreria de tratamiento de cadenas de caracteres #include "Cargador.h" //Clase creada por nosotros que se encarga de la gestion del tablero int main(int argc, char** argv){ if(argc>=2) cargar(argv[1]); else cargar("default.cfg"); return 0; }
En este caso es este:
Código:
Actualmente utilizo eclipse para programar y hay no me da error ni warning pero cuando lo hago desde la consola de ubuntu 10.10 me da el siguiente error:#include <stdio.h> // La libreria de entrada/salida #include <stdlib.h> // La libreria estandar de C #include <string.h> // La libreria de tratamiento de cadenas de caracteres #include <malloc.h> #include <ctype.h> #ifndef CARGADOR_H_ #define CARGADOR_H_ typedef struct{ int ancho,alto,linea; #define min_puertas 1; } Puerta; typedef struct { int ancho,alto,puntuacion,linea; } Tesoro; typedef struct { int ancho,alto,linea; } Enemigo; typedef struct { int ancho1,alto1,ancho2,alto2,linea; } Muro; typedef struct { int ancho,alto,linea; } Roca; typedef struct { int ancho,alto,linea; } Dimensiones; typedef struct { int error_linea; int cod_error; } Estruc_error; typedef struct { Dimensiones * dimension; Puerta * puertas; Tesoro * tesoro; Enemigo * enemigo; Muro * muro; Roca * roca; Estruc_error * errores; int con_P,con_T,con_E,con_M,con_R,con_Err; } Tablero; void menu(Tablero * tablero); void cargar(char* nombre); void liberarTablero(Tablero * tablero); void generaEnemigo(char* linea,int cont,Tablero * tablero); void generaTesoro(char* linea,int cont,Tablero * tablero); void generaMuro(char* linea,int cont,Tablero * tablero); void generaRoca(char* linea,int cont,Tablero * tablero); void generaPuerta(char* linea,int cont,Tablero * tablero); void procesar_linea(char* linea,int cont,Tablero * tablero); void limpiar(); void generaDimensiones(char* linea,int cont,Tablero * tablero); void generaError(int cod,int cont,Tablero * tablero); #endif /* CARGADOR_H_ */
Código:
Sin embargo si en el main cambio el include y lo hago del archivo Cargador.c no me da error en la consola de Ubuntu y si en la de Eclipse, ¿Como puedo solucionar esto? a lo mejor es un error de novato, pero es mi primer programa en C y estoy un poco verde./home/xxxx/workspace/pacman/main.c:39: undefined reference to `cargar' /home/xxxx/workspace/pacman/main.c:41: undefined reference to `cargar'
Agradeceria cualquier tipo de ayuda o referencia acerca de este error, saludos.