我在这方面遇到了麻烦... 我有这个标题:
#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 上的 fiel 信息类型不完整。
将elem_t info;
更改为struct elem_t into;
没有效果。
最佳答案
您没有名为 struct pessoa
的类型。您有struct pa
,还有pessoa
(类型定义)。
所以你需要改变这个:
typedef struct pessoa elem_t;
进入以下之一:
typedef struct pa elem_t;
typedef pessoa elem_t;
关于c - 从一个 header 结构到另一个 header 中的结构体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24420738/