dev?c++的使用和調(diào)試方式
dev c++ 的使用和調(diào)試
使用斷點(diǎn)調(diào)試
1.若無法調(diào)試:
工具–>編譯選項(xiàng)–>代碼生成/優(yōu)化–>連接器–>產(chǎn)生調(diào)試信息–>no改成yes
2.調(diào)試的基本步驟:
- 一、把右上角的release模式改成debug模式
- 二、設(shè)置斷點(diǎn)
- 三、點(diǎn)擊全部編譯,在點(diǎn)擊對勾即可
(有藍(lán)色的箭頭表示,還沒有執(zhí)行,即將要執(zhí)行的語句,但是藍(lán)色一行以上的,變量可以通過調(diào)試后的進(jìn)行查看的兩種方式,
- ① 添加查看,來輸入變量值,并查看
- ② 選中變量或表達(dá)式,在點(diǎn)擊添加查看,即可看見左側(cè)欄的變量值)當(dāng)然通過終端控制臺也可以觀察變量的值;
關(guān)于循環(huán)語句斷點(diǎn)的設(shè)置和查看:
在循環(huán)的開頭和結(jié)尾分別往下依次設(shè)立斷點(diǎn),通過終端,便可查看語句執(zhí)行的進(jìn)度
3.調(diào)試的按鈕及功能:
- 下一步:執(zhí)行下一個(gè)語句,把函數(shù)當(dāng)成一個(gè)語句直接給出結(jié)果
- 單步進(jìn)入:執(zhí)行下一個(gè)語句,遇見函數(shù),則進(jìn)入函數(shù),單步執(zhí)行(觀察循環(huán)和函數(shù)中變量的變換的最好方式)
- 跳過:執(zhí)行直到下一個(gè)斷點(diǎn)之前,如果沒有下一個(gè)斷點(diǎn),則直接執(zhí)行到結(jié)束
4.端點(diǎn)常見錯誤:
- ① 正常情況下(沒有bug)會停在斷點(diǎn)處,呈現(xiàn)藍(lán)色箭頭,如果有bug,斷點(diǎn)處依舊為紅色,則說明還語句就沒有執(zhí)行到,過者不被執(zhí)行,因?yàn)闆]有滿足條件
- ② 調(diào)試報(bào)錯:?當(dāng)執(zhí)行了一個(gè)無效的內(nèi)存引用,即操作了一個(gè)空地址,或者數(shù)組越界,就會報(bào)錯
例如:char a[100000000000],就會報(bào)錯,因?yàn)?,根本沒有這么大的數(shù)值,已經(jīng)遠(yuǎn)遠(yuǎn)超過了它本身的字節(jié)長度,在調(diào)試的時(shí)候會報(bào)錯。
所以char a[100],就可以,表是a有100個(gè)字符,每個(gè)字符可以寫成1000000000……一百個(gè)
5.調(diào)試中出現(xiàn)的問題:
一、當(dāng)在調(diào)試中無法往下進(jìn)行scanf輸入的時(shí)候,一定是循環(huán)條件出現(xiàn)了問題,甚至在調(diào)試的時(shí)候出現(xiàn)了報(bào)錯,說明該輸入語句有問題,請及時(shí)查閱關(guān)于此處的相關(guān)知識。
還有可能是數(shù)組越界,還有可能陷入了死循環(huán),通常時(shí),(循環(huán)語句,時(shí)先執(zhí)行i++之類的,還是執(zhí)行循環(huán)while)引起的,要小心。
二、在scanf函數(shù)出調(diào)試的時(shí)候,一定先寫下一步(或者單步進(jìn)入)在在終端中輸入值->回車,在進(jìn)入下一步(單步進(jìn)入)
6.使用問題:
dev C++ 中的代碼覆是因?yàn)椴恍⌒陌戳薸nsert引起的插入模式,取消的話,在按一下insert
使用cout/printfl函數(shù)來打印變量
在每一條循環(huán)或語句中用printf/cout 輸出變量,并查看某幾個(gè)變量的值,看該變量是否正確,不正確就是printf語句上面出現(xiàn)了錯誤,仔細(xì)想想就ok,
如果所有的變量都是正確的值,變問題就出現(xiàn)在下printf函數(shù)的下方。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Species Tree 利用HashTable實(shí)現(xiàn)實(shí)例代碼
這篇文章主要介紹了Species Tree 利用HashTable實(shí)現(xiàn)實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下2017-01-01
數(shù)據(jù)結(jié)構(gòu) C語言實(shí)現(xiàn)循環(huán)單鏈表的實(shí)例
這篇文章主要介紹了數(shù)據(jù)結(jié)構(gòu) C語言實(shí)現(xiàn)循環(huán)單鏈表的實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-05-05
opencv實(shí)現(xiàn)視場轉(zhuǎn)換
這篇文章主要為大家詳細(xì)介紹了opencv實(shí)現(xiàn)視場轉(zhuǎn)換,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-04-04
C++實(shí)現(xiàn)學(xué)生管理系統(tǒng)示例解析
這篇文章主要介紹了C++實(shí)現(xiàn)學(xué)生管理系統(tǒng)示例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
詳解MFC/C++調(diào)用易語言的整數(shù)型和文本型與VS2010互動
在本篇文章里我們給大家分享了MFC/C++調(diào)用易語言的整數(shù)型和文本型與VS2010互動相關(guān)知識點(diǎn)內(nèi)容,有興趣的朋友們可以參考下。2018-11-11
Qt設(shè)計(jì)與實(shí)現(xiàn)軟鍵盤效果
這篇文章主要為大家詳細(xì)介紹了Qt設(shè)計(jì)與實(shí)現(xiàn)軟鍵盤效果的相關(guān)知識,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-11-11

