Enviado em 16/11/2018 - 12:01h
Pessoal, eu estou usando dois arquivos, o database.c e database.h
no database.h tem:
no database.c tem:
a função foo funcional normalmente, agora quando eu chamo no main, que está no arquivo teste.c:
aparece a seguinte mensagem:
note: each undeclared identifier is reported only once for each function it appears in
teste.c:4:14: error: storage size of ‘a’ isn’t known
TypeRoom b = DOUBLE_EXECUTIVE;
Como faço para colocar e declaração do enum no database.h e sua implementação no database.c para poder usar no meu main em outro arquivo.
Desde já obrigado.
no database.h tem:
typedef enum _type_room TypeRoom;
no database.c tem:
enum _type_room {
SIMPLE_EXECUTIVE = 1,
DOUBLE_EXECUTIVE,
TRIPLO_EXECUTIVE,
SIMPLE_LUXURY,
DOUBLE_LUXURY,
TRIPLE_LUXURY,
PRESIDENTIAL
};
void foo(void)
{
enum _type_room a = DOUBLE_EXECUTIVE;
printf("ok\n");
printf("%d\n", a);
}
a função foo funcional normalmente, agora quando eu chamo no main, que está no arquivo teste.c:
#include "database.h"
int main(void) {
TypeRoom b = DOUBLE_EXECUTIVE;
printf("%d\n", b);
foo();
return 0;
}
aparece a seguinte mensagem:
note: each undeclared identifier is reported only once for each function it appears in
teste.c:4:14: error: storage size of ‘a’ isn’t known
TypeRoom b = DOUBLE_EXECUTIVE;
Como faço para colocar e declaração do enum no database.h e sua implementação no database.c para poder usar no meu main em outro arquivo.
Desde já obrigado.