高軟實驗五報告

網易雲課堂暱稱 + 《軟件工程(C編碼實踐篇)》MOOC課程作業http://mooc.study.163.com/course/USTC-1000002006

鄔凱 SA17225394

實驗五:用callback增強鏈表模塊來實現命令行菜單小程序V2.8

一、實驗要求:

  1. 給lab5-1.tar.gz找bug,quit命令無法運行的bug
  2. 利用callback函數參數使Linktable的查詢接口更加通用
  3. 注意接口的信息隱藏

二、實驗過程:

1.修改lab5.1中的bug。

編譯後運行menu文件,發現輸入quit命令時提示This is a wrong cmd!
查看代碼發現在linktable.c文件中有如下錯誤
這裏寫圖片描述
在SearchLinkTableNode())中,while循環結束的條件是pNode指向表的結尾,而quit函數就是在表的結尾,所以將while(pNode != pLinkTable->pTail)修改爲while(pNode != NULL),修改後再次編譯後運行menu文件,quit命令能正常運行,結果如下圖
這裏寫圖片描述

2.利用callback函數參數使Linktable的查詢接口更加通用

將linktable.c中的代碼作出如下修改,註釋掉的爲原代碼。
這裏寫圖片描述

3.信息的隱藏

在linktable.c中定義Linktable結構體,而在linktable.h中只留下LinkTable結構的聲明。即將結構體LinkTableNode的實現從linktable.h轉移到了linktable.c
運行結果如下
這裏寫圖片描述

三、實驗結果測試
這裏寫圖片描述

四、實驗總結

通過本次實驗,我學習到增加callback思想使程序體更加通用,提高了代碼能力。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章