求和c語(yǔ)言程序 如果在寫(xiě)C語(yǔ)言時(shí),代碼沒(méi)錯(cuò),但是結(jié)果總錯(cuò)是什么原因?
如果在寫(xiě)C語(yǔ)言時(shí),代碼沒(méi)錯(cuò),但是結(jié)果總錯(cuò)是什么原因?我想你要表達(dá)的是,編繹時(shí),沒(méi)顯示出錯(cuò),但就是結(jié)果錯(cuò)了。要細(xì)致地找原因。根據(jù)我以往的經(jīng)驗(yàn),原因有以下幾點(diǎn)。1,內(nèi)存沒(méi)有釋放。用new,malloc等分
如果在寫(xiě)C語(yǔ)言時(shí),代碼沒(méi)錯(cuò),但是結(jié)果總錯(cuò)是什么原因?
我想你要表達(dá)的是,編繹時(shí),沒(méi)顯示出錯(cuò),但就是結(jié)果錯(cuò)了。要細(xì)致地找原因。
根據(jù)我以往的經(jīng)驗(yàn),原因有以下幾點(diǎn)。
1,內(nèi)存沒(méi)有釋放。
用new,malloc等分配內(nèi)存,而在結(jié)束時(shí)來(lái)釋放,頻繁調(diào)用,系統(tǒng)崩潰。
或者根本沒(méi)使用new或malloc,在使用內(nèi)存時(shí)異常。
2,變量與地址用錯(cuò)。
char *p
char cp
第一個(gè)p指地址,在程序中用錯(cuò)。
3,畫(huà)筆CPen,CStatic等未恢復(fù)
如:oldpen=pdc一>SelectObject(&m_pen)
在結(jié)束,沒(méi)有pdc一>SelectObject(oldpen)
導(dǎo)致顏色混亂。
4,中斷使用不當(dāng),或者回調(diào)callback函數(shù)使用不當(dāng).
5,c語(yǔ)言對(duì)變量類(lèi)型有嚴(yán)格要求,unsigned與signed區(qū)別還是很大的,詳細(xì)檢查函數(shù)原型。
6,最后檢查算法,框圖。是否基本算法有誤。這個(gè)很難做。相信大家都很自負(fù),堅(jiān)信算法沒(méi)錯(cuò)。對(duì)照數(shù)學(xué)算法與你的程序算法是否一致。
7,浮點(diǎn)運(yùn)算。相信大家認(rèn)為1.0十1.0=2.0無(wú)疑。如果double與其它變量轉(zhuǎn)換出問(wèn)題,沒(méi)準(zhǔn)是這樣的結(jié)果:
1.0十1.0=1.9999999999......