C C 棧 鏈式 資料結構

2021-10-23 23:05:52 字數 1323 閱讀 8901

#include

#include

#define maxsize 128

typedef

int elemtype;

typedef

struct _sqstack

sqstack;

bool

initstack

(sqstack* s)

;//初始化棧

bool

pushstack

(sqstack* s, elemtype e)

;//棧中新增元素

bool

popstack

(sqstack* s, elemtype* e)

;//刪除棧中的元素

intgetsize

(sqstack* s)

;//獲取棧的大小

elemtype gettop

(sqstack* s)

;//獲取棧頂

bool

isempty

(sqstack* s)

;//棧是否為空

void

destorystack

(sqstack* s)

;//對指標加減法,表示的是元素相隔的個數

intmain

(void

)printf

("元素依次出棧:\n");

while(!

isempty

(&s)

)printf

("\n");

destorystack

(&s)

;system

("pause");

return0;

}bool

initstack

(sqstack* s)

bool

pushstack

(sqstack* s, elemtype e)

bool

popstack

(sqstack* s, elemtype* e)

*e =*(

--s-

>top)

;return

true;}

intgetsize

(sqstack* s)

elemtype gettop

(sqstack* s)

else

}bool

isempty

(sqstack* s)

else

}void

destorystack

(sqstack* s)

}

資料結構 鏈式棧

編譯錯誤 passing const linkstack as this argument discards qualifiers fpermissive 解決方法 c 中const 引用的是物件時只能訪問該物件的const 函式,因為其他函式有可能會修改該物件的成員,編譯器為了避免該類事情發生,會...

資料結構之鏈式棧

好久不見,前面我們學過了資料結構的順序棧。今天我們來學習下鏈式棧的實現,鏈式棧的話,還是要利用前面我們實現的鏈式鍊錶,不知道鏈式鍊錶的,出門左轉,前面就有介紹。第七個例子,鏈式棧的實現 注 把我們先前實現的鏈式鍊錶的標頭檔案和實現檔案包含進來 標頭檔案 ifndef linkstack h defi...

資料結構棧(鏈式實現)

真正的棧操作是在棧頂,這裡給出的棧是帶了頭結點的棧,也就是說head next代表圖示棧頂,head next data是1 實現 include include typedef int datatype typedef struct snode lsnode 初始化帶頭結點的鏈式堆疊,初始化函式中...