[問題] 請問創建未知數量節點的串列
目前對C語言串列還不是很熟悉 想請教一下大神有關串列的問題
假設我有n個裝置
都發資料(資料皆不相同)給中心裝置 我想把中心收到的資料建立成串列
之後能複製資料出來使用
n可能10個也可能20個 就一個未知的數量
該如何建立一個串列是擁有n個節點的呢
以下是我錯誤的程式碼主要部分
int i=0;
struct node{ //建立節點結構
int data;
struct node* next;
}Node;
Node* head=(struct node*)malloc(sizeof(struct node)); //頭指標
head->next=NULL;
while(中心裝置buffer沒資料為止) //跑n次
{
Node (*x)[i]=(struct node*)malloc(sizeof(struct node)); /我想這句是整個觀念錯誤
if(i==0)
{
x[i]->next=NULL;
head->next=x[i];
x[i]->data=Buffer當時資料;
}
else
{
x[i]->next=NULL;
x[i-1]->next=x[i];
x[i]->data=Buffer當時資料;
}
i++
}
我想程式的邏輯我應該錯的很離譜
但我用人的邏輯只能想到這樣表達了
網路資料大部分都是在一個串列新增一節點
或是建立以知數量節點的串列
請求大神們解惑了 該如何才能建立未知數量節點的串列
感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.241.153.24
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1449749346.A.FC0.html
推
12/10 20:12, , 1F
12/10 20:12, 1F
→
12/10 20:16, , 2F
12/10 20:16, 2F
→
12/10 20:24, , 3F
12/10 20:24, 3F
→
12/10 20:25, , 4F
12/10 20:25, 4F
→
12/10 20:30, , 5F
12/10 20:30, 5F
→
12/10 20:31, , 6F
12/10 20:31, 6F
→
12/10 20:31, , 7F
12/10 20:31, 7F
→
12/10 20:51, , 8F
12/10 20:51, 8F
推
12/11 09:56, , 9F
12/11 09:56, 9F
推
12/11 09:59, , 10F
12/11 09:59, 10F
→
12/11 10:01, , 11F
12/11 10:01, 11F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章