contributed by < Lushengjhou0315 >
詳閱作業規範,注意細節。
將目標完成的 queue.c 打開以後,除了確認預期目標中,未完整程式的功能以及需求,從 queue.h 中確認輸入參數所代表的意思與型別。標頭檔中 list.h 的內容也有看,其中有許多功能可以拿來利用,因此在實作的部分會使用到其中的內容進行實作
首先使用了 malloc 配置了記憶體,根據 harness.h 的描述,記憶體有可能配置失敗,會回傳 NULL ,因此需要加上判斷。
在這邊還利用 INIT_LIST_HEAD 進行 head 的初始化,由於佇列的鏈結串列是雙向的,現在只有節點,因此向前以及向後的指標都指向自己。
考慮了幾個可能性