c 雙向迴圈連結串列改錯

2023-01-19 04:25:28 字數 591 閱讀 9163

1樓:匿名使用者

void combine_list(linklist & x,const linklist y);

void combine_list(linklist & x,const linklist y,const linklist z);

這2個的後面的引數也要用引用,&y和&z

因為你沒有過載複製構造和賦值「=」操作符,預設的複製只把類本身的資料複製了,指標引用的不會複製到,傳引數時結構和類都是值傳遞的,就是複製了一份,指標的值複製後,就指向同一串資料了,其中一個物件析構就會刪掉,其他指向同一資料的物件就會出錯

都改成引用void combine_list(linklist & x,const linklist & y);

或者新增複製構造和過載「=」操作符,把指標指向的內容也複製過去

2樓:匿名使用者

ok,**基本上沒有錯。 尾指在合併的時候,插入點時候有點異常。

跟蹤除錯下。

這就去看看。

3樓:匿名使用者

朋友 沒有人回答 我不懂 幫你頂一下 如果沒有更好的回答請給把分給我 謝謝

c 單迴圈連結串列的約瑟夫環問題,要求輸出全部出隊順序。程式掛

我去,你來 這程式居然能編譯過去,我很 自無語。1 看到第三行int a 既然是常量初始化,你搞個空怎麼可以,main裡面int a n n是你輸入的資料,編譯器不知道值,怎麼可能編譯過去你這需要用到動態分配,int a a new int n 你宣告的全域性的a陣列應該去掉,沒什麼用,還引起歧義2...

c語言連結串列問題,c語言連結串列的問題

連結串列必須知道頭指標在哪第一個紅圈是初始化指標 因為你剛開始定義連結串列指標的時候指標指向的是隨機的 所以只能初始化 第二個紅圈是第一次給連結串列分配空間 如果頭指標為空就把連結串列指標給頭指標 這倆個語句確實只執行一次 但我沒理解你話的意思 你的理解當然不對了。前一個頭 head 尾 tail ...

c語言程式設計連結串列題,c語言程式設計連結串列題

include include include typedef struct student message stu struct student message static stu head null 建立一個節點,並賦予相應的數值 stu create link node char const...