1. 程式人生 > 實用技巧 >聊聊軟體測試入職後,為了快速適應新的工作我做了什麼 軟體測試er

聊聊軟體測試入職後,為了快速適應新的工作我做了什麼 軟體測試er

MyOD

題目要求

複習c檔案處理內容
編寫myod.c 用myod XXX實現Linux下od -tx -tc XXX的功能
main與其他分開,製作靜態庫和動態庫
編寫Makefile
提交測試程式碼和執行結果截圖, 提交除錯過程截圖,要全屏,包含自己的學號資訊
在部落格園發表一篇部落格,重點寫遇到的問題和解決過程

完成步驟

瞭解od命令作用與用法,理解要求
執行並檢視od使用效果
使用C語言實現od -tx -tc XXX的功能
main與其他分開,製作靜態庫和動態庫
編寫Makefile

瞭解od命令,理解要求

以下部分摘自Linux od命令 ,可知需要通過myod.c,實現將檔案內容分別輸出為AXCII字元或十六進位制的功能。

作用

Linux od命令用於輸出檔案內容。

od指令會讀取所給予的檔案的內容,並將其內容以八進位制字碼呈現出來

語法

od [-abcdfhilovx][-A <字碼基數>][-j <字元數目>][-N <字元數目>][-s <字串字元數>][-t <輸出格式>][-w <每列字元數>][--help][--version][檔案...]

引數

  • -t  <輸出格式>或--format=<輸出格式> 設定輸出格式。

    • c:輸出ASCII字元或者反斜槓;

    • x[SIZE]:十六進位制,SIZE位元組為單位以十六進位制輸出,即輸出時一列包含SIZE位元組。在預設條件下,以四個位元組為一組輸出

      ……

……

執行並檢視od結果

對之前編譯出的main1214二進位制檔案使用od -tc -tx命令,檢視執行結果,並與WinHex得到結果對比。

圖1

可以知道每20位元組為一段,每段兩行且有位元組標序,第一行為二進位制碼所轉ASCII碼所對應的字元,第二行為二進位制碼所轉16進位制碼。值得注意的是,標序為WinHex預設16進位制標序不同為八進位制,od -tx輸出的16進位制碼為小端法排列,od -tc所轉的ASCII碼若無對應字元,將會以八進位制數字顯示。

使用C語言實現od -tx -tc XXX的功能

圖2

圖3

main與其他分開,製作靜態庫和動態庫

編寫Makefile

遇到的問題和解決過程