declaração de estrutura C indefinida

Tenho um arquivo de cabeçalho port.h, port.c e meu main.c

Eu recebo o seguinte erro: 'ports' usa estrutura indefinida 'port_t'

Pensei em declarar a estrutura no meu arquivo .h e ter a estrutura real no arquivo .c estava o

Preciso ter a declaração de encaminhamento, pois quero ocultar alguns dados no meu arquivo port.

Na minha porta.h, tenho o seguinte:

/* port.h */
struct port_t;

port.c:

/* port.c */
#include "port.h"
struct port_t
{
    unsigned int port_id;
    char name;
};

main.c:

/* main.c */
#include <stdio.h>
#include "port.h"

int main(void)
{
struct port_t ports;

return 0;
}

Muito obrigado por todas as sugestões

questionAnswers(4)

yourAnswerToTheQuestion