我是新手程序員,正在寫C語言的一個簡單的wav-player作爲一個寵物項目。部分文件加載過程需要從文件頭中讀取特定數據(採樣率,通道數......)。 目前我在做什麼與此類似:從C中的二進制文件中讀取不同位數據的良好編碼風格是什麼?
- 掃描字節序列,並跳過它
- 讀2個字節到變量
- 校驗值,並返回出錯
- 跳過4個字節
- 讀4個字節爲變量b
- 檢查值,並返回出錯
...等等。 (代碼見:https://github.com/qgi/Player/blob/master/Importer.c)
我寫了一些幫助函數來執行掃描/跳過/讀取位。儘管如此,我仍在重複閱讀,檢查,幾次跳過部分內容,這看起來既不是非常有效,也不是很聰明。這對我的項目來說不是一個真正的問題,但是當處理二進制文件看起來這是一個相當常見的任務時,我想知道: 是否存在某種模式,以更清晰的代碼更有效地完成此操作?
謝謝,我沒有想到結構!具有很大的意義。 – 2011-03-28 21:24:40