亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

C++創建鏈表問題

C++創建鏈表問題

元芳怎么了 2019-04-16 17:05:48
cpp#includeusingnamespacestd;structnode{chardata;node*next;};;node*Create();;voidshow(node*head);intmain(){node*head;head=Create();show(head);return0;}node*Create(){chartemp;node*head=NULL;node*next=NULL;node*r=head;node*PS;coutnext=NULL;if(head==NULL){head=PS;}else{r->next=PS;}r=PS;}returnhead;}voidshow(node*head){node*read=head;while(read!=NULL){coutnext;}cout
查看完整描述

2 回答

?
阿波羅的戰車

TA貢獻1862條經驗 獲得超6個贊

放到外面說明當head==NULL成立的時候也需要執行r=PS。那么為什么每次增加節點都需要執行r=PS呢?你順著邏輯想想吧。。
好吧,其實是這樣的,按你的想法放到里面,增加第一個節點的時候head==NULL成立,r=PS并不會執行,那么第二次增加節點的時候r還是等于NULL但head==NULL不成立,于是執行r->next=PS時程序掛掉。。
r這個指針其實指向的是當前鏈表最后一個節點。
PS..申明node結構的時候應該是node*next吧。。。
                            
查看完整回答
反對 回復 2019-04-16
?
蠱毒傳說

TA貢獻1895條經驗 獲得超3個贊

node*head=NULL;
node*next=NULL;
node*r=head;
此時r=NULL,然后
r->next=PS;
r=PS;
相當于
NULL->next=PS
...
然后大家就呵呵了
                            
查看完整回答
反對 回復 2019-04-16
  • 2 回答
  • 0 關注
  • 345 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號