我收到错误"取消引用指向不完整类型的指针"而且我不知道为什么。 我看到其他很多帖子,但我没有找到错误所以请帮助我:) 这是我的结构:
typedef struct _linkedList{
int info;
int cont;
struct _linkedlist* next;
struct _linkedList* prew;
} linkedList;
这是我得到错误的位置:
linkedList* p;
int pos = 0;
while(pre->prew->cont < pre->cont && pre->prew != NULL){
p = pre->prew;
if(p->prew != *head){
p->prew->next = pre;
pre->prew = p->prew;
p->next = pre->next;
p->prew = pre;
pre->next->prew = p; //error
pre->next = p;
pos++;
}else{
p->next = pre->next;
pre->next->prew = p; //error
pre->next = p;
p->prew = pre;
*head = pre;
}
}
变量&#34; pre&#34;是列表的负责人。以及编译器为什么不给我一个错误:
p->prew->next = pre;
谢谢:)
答案 0 :(得分:1)
next
的结构名称中有拼写错误,而_linkedlist
代替_linkedList
:
struct _linkedlist* next;
struct _linkedList* prew;
答案 1 :(得分:0)
结构和实际功能的定义是否在不同的文件中?通常,此错误意味着编译器不知道您正在进行defrefencing的指针类型。