Re: [問題] 讀取bmp影像檔

看板MacDev作者 (電腦無法阻止人類做蠢事)時間18年前 (2007/07/27 12:57), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
※ 引述《wcmein (浪漫鐵人8號 ￾ )》之銘言: : 請問一下 : 我利用C++ 藉由 opengl 讀取影像檔 : 我在windows的VC++6.0 下可以讀取 : 可是在mac 的XCode (C++ tool) 下就無法讀取了 : 請問是何種原因 : 以下為source code 取材自opengl超級聖經 第二版 : ....<餘文刪除> 在這裡,稍微講一下,怎麼去找出程式的問題。 之前的推文裡有講過,當程式有問題的時候,第一步是在可疑的地方設中斷點 仔細看看程式真正在跑的流程為何。 通常在這一步過後,大多數的程式碼,都能找出問題所在。 其中許多問題,可立即解決。 可是以這一程式來說,問題並不光是程式本身,還包括了輸入的資料, 這時候,光檢視程式本身,不容易找出問題。 此時開發者所要做的事情有二: 1. 檢查輸入資料的格式。 2. 預測輸入資料後的結果。 這是什麼意思呢? 舉例而言: 一個MPEG-2 TS 的檔案,他的Header的開頭必定是0x0000000047. 我知道這點,當我要剖析MPEG-2 TS時,我便預期到, 當我將MPEG-2 TS的資料讀到Buffer時,Buffer的開頭必定為0x0000000047 而在我的程式實際可能如下: if(buffer[4] != 0x47) { Assert(...); } 那當我的程式從檢查點退出時,檢視buffer的內容,是否為我所預期的值, 就可知道可能的問題點在那。 更進一步來說,如果buffer的值與輸入資料不同,只有兩個可能: 1. 我寫錯. 2. 資料不正確。 (而且通常都是1.比較可能....) 這時候,要做的事就是:找一個能開binary的編輯器,仔細看看檔案內到底是怎麼寫的 (我是都使用HexEdit啦...) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.115.2 ※ 編輯: atst 來自: 140.112.115.2 (07/27 13:14)
文章代碼(AID): #16gNis3W (MacDev)
討論串 (同標題文章)
文章代碼(AID): #16gNis3W (MacDev)