我在这方面遇到了麻烦... 我有这个标题:
#ifndef PESSOA_H
#define PESSOA_H
typedef struct pa{
int idade;
int atend;
}pessoa;
void inicPessoa(pessoa *ps, int id);
#endif
并且,在 filaC.h 中:
#ifndef FILAC_H
#define FILAC_H
#include "pessoa.h"
typedef struct pessoa elem_t;
typedef struct no{
elem_t info;
struct no *prox, *ant;
} No;
typedef No * Fila;
#endif
但编译器说 filaC.h 上的字段信息类型不完整。
将 elem_t info;
更改为 struct elem_t into;
没有任何效果。
最佳答案
您没有名为 struct pessoa
的类型。你有 struct pa
,你有 pessoa
(一个 typedef)。
所以你需要改变这个:
typedef struct pessoa elem_t;
进入其中之一:
typedef struct pa elem_t;
typedef pessoa elem_t;
关于c - 从一个 header 到另一个 header 中的结构的结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6089589/