程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> c語言-關於鏈棧頭指針的問題

c語言-關於鏈棧頭指針的問題

編輯:編程綜合問答
關於鏈棧頭指針的問題

圖片說明圖片說明圖片說明以上為鏈棧程序(無錯),但為什麼不能將直接用struct node 定義一個top指針,而要用一個結構體裡面放top指針。如果直接用struct node 定義一個top指針那麼入棧部分將出錯,為何?或者說這兩者區別在哪?

最佳回答:


** 樓主,注意看你設計的數據結構,如果你用struct node *top 直接指向頭的話,那麼這個top包含2個內容, 1: int data ; 2: struct node *next ;
這樣的話在你操作的時候,不是很方便,你這樣的top自己本身就是一個存儲數據的結構了,如果你只是把第一個節點出棧的話,那你的頭節點就不好操作了。
相反,你用一個 struct link{struct node *top} top; 的話,你相當於給這個鏈表創建了一個手柄,可以操作其他的數據的,靈活性高好多。假如你要
刪除第一個元素,此時top指向第一個元素,而他本身不是第一個元素,這樣就好操作多了!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved