[問題] 雙向循環鏈結串列,新增一節點問題
遇到的問題: (題意請描述清楚)
temp->rlink->llink=item;
希望得到的正確結果:
應該沒錯才對>"<
程式跑出來的錯誤結果:
dereferencing pointer to incomplete type
開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
Dev-C++
有問題的code: (請善用置底文標色功能)
#include <stdlib.h>
#include <stdio.h>
int main(void)
{
typedef struct
{
int data;
struct dlNode * llink;
struct dlNode * rlink;
}dlNode;
typedef dlNode * Node;
//先建立3個node
int i=1;
Node head,tail,a,b,c,temp;
a=(Node)malloc(sizeof(dlNode));
b=(Node)malloc(sizeof(dlNode));
c=(Node)malloc(sizeof(dlNode));
tail=c;
a->data=100;
b->data=200;
c->data=300;
a->rlink=b;
b->rlink=c;
c->rlink=a;
a->llink=c;
b->llink=a;
c->llink=b;
//search到200的節點,然後在其節點後加入新節點210
temp=tail->rlink;
do
{
if(temp->data==200)
{
Node item;
item=(Node)malloc(sizeof(dlNode));
item->data=210;
item->llink=temp;
item->rlink=temp->rlink;
temp->rlink->llink=item; //出現 dereferencing pointer to incomplete type
temp->rlink=item;
break;
}
temp=temp->rlink;
}while(temp !=tail->rlink);
system("pause");
return 0;
}
補充說明:
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.65.71.253
→
01/08 14:43, , 1F
01/08 14:43, 1F
→
01/08 14:44, , 2F
01/08 14:44, 2F
→
01/08 14:44, , 3F
01/08 14:44, 3F
→
01/08 14:47, , 4F
01/08 14:47, 4F
→
01/08 14:49, , 5F
01/08 14:49, 5F
→
01/08 14:49, , 6F
01/08 14:49, 6F
推
01/08 17:32, , 7F
01/08 17:32, 7F
→
01/08 17:33, , 8F
01/08 17:33, 8F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章