線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1728
推到 Plurk!
推到 Facebook!

堆疊的問題

答題得分者是:writeman
csh720526
一般會員


發表:2
回覆:3
積分:1
註冊:2004-11-09

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-12-09 01:23:36 IP:59.105.xxx.xxx 未訂閱
小弟是剛學到用指標來做堆疊不過看書上的範例中有一些地方不懂 請各位大大幫我解釋一下 push是把我輸入的值存起來,然後新的節點在指向新的節點 void push(StackNodePtr *topptr,int a) { StackNodePtr new; new=malloc(sizeof(StackNode)); new->value=a; new->next=*topptr;//這裡是把新節點指向最頂端 *topptr=new;//可是這裡又把新節點設為最頂端那麼 //topptr不就是指向自己嗎?? }
csh720526
一般會員


發表:2
回覆:3
積分:1
註冊:2004-11-09

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-12-09 01:28:59 IP:59.105.xxx.xxx 未訂閱
小弟是剛學到用指標來做堆疊不過看書上的範例中有一些地方不懂 請各位大大幫我解釋一下 push是把我輸入的值存起來,然後新的節點在指向新的節點 把錯字了~~是指向原來的top void push(StackNodePtr *topptr,int a) { StackNodePtr new; new=malloc(sizeof(StackNode)); new->value=a; new->next=*topptr;//這裡是把新節點指向最頂端 *topptr=new;//可是這裡又把新節點設為最頂端那麼 //topptr不就是指向自己嗎?? }
writeman
初階會員


發表:31
回覆:34
積分:28
註冊:2004-02-17

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-12-09 17:16:53 IP:61.70.xxx.xxx 未訂閱
假設原本是這樣 t 3 -> 2 -> 1 StackNodePtr new; new=malloc(sizeof(StackNode)); new->value=a; new->next=*topptr;//這裡是把新節點指向最頂端 new一個4, 指向t所指的地方 t 4 -> 3 -> 2 -> 1 *topptr=new;//可是這裡又把新節點設為最頂端那麼 t指向4 t 4 -> 3 -> 2 -> 1
csh720526
一般會員


發表:2
回覆:3
積分:1
註冊:2004-11-09

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-12-09 23:07:42 IP:59.105.xxx.xxx 未訂閱
今天跑去問老師了~~ 和上面那個大大說的差不多~~ 不過還是謝謝~~~^^
系統時間:2024-05-02 17:38:35
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!