我在头文件中得到了这样的结构:
typedef struct {
LIGNE *precedent;
PERSONNE individu;
LIGNE *suivant;
} LIGNE;
但是当我编译时,出现了这个错误:error: unknown type name ‘LIGNE’
LIGNE *precedent;
^~~~~
error: unknown type name ‘LIGNE’
LIGNE *suivant;
我不明白问题出在哪里。
最佳答案
如通讯员和Tomo Ceferin的回答所述,您的编译器直到第5行才知道LIGNE
是什么。
一种解决方案是在声明结构之前对它进行typedef:
typedef struct S_LIGNE LIGNE;
struct S_LIGNE {
LIGNE *precedent;
PERSONNE individu;
LIGNE *suivant;
};
这样,您的编译器就会知道LIGNE
是struct S_LIGNE
的类型定义。
关于c - C链表结构中的未知类型名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65126976/