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)擊對(duì)勾即可
(有藍(lán)色的箭頭表示,還沒有執(zhí)行,即將要執(zhí)行的語句,但是藍(lán)色一行以上的,變量可以通過調(diào)試后的進(jìn)行查看的兩種方式,
- ① 添加查看,來輸入變量值,并查看
- ② 選中變量或表達(dá)式,在點(diǎn)擊添加查看,即可看見左側(cè)欄的變量值)當(dāng)然通過終端控制臺(tái)也可以觀察變量的值;
關(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)常見錯(cuò)誤:
- ① 正常情況下(沒有bug)會(huì)停在斷點(diǎn)處,呈現(xiàn)藍(lán)色箭頭,如果有bug,斷點(diǎn)處依舊為紅色,則說明還語句就沒有執(zhí)行到,過者不被執(zhí)行,因?yàn)闆]有滿足條件
- ② 調(diào)試報(bào)錯(cuò):?當(dāng)執(zhí)行了一個(gè)無效的內(nèi)存引用,即操作了一個(gè)空地址,或者數(shù)組越界,就會(huì)報(bào)錯(cuò)
例如:char a[100000000000],就會(huì)報(bào)錯(cuò),因?yàn)?,根本沒有這么大的數(shù)值,已經(jīng)遠(yuǎn)遠(yuǎn)超過了它本身的字節(jié)長(zhǎng)度,在調(diào)試的時(shí)候會(huì)報(bào)錯(cuò)。
所以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)錯(cuò),說明該輸入語句有問題,請(qǐng)及時(shí)查閱關(guān)于此處的相關(guān)知識(shí)。
還有可能是數(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)了錯(cuò)誤,仔細(xì)想想就ok,
如果所有的變量都是正確的值,變問題就出現(xiàn)在下printf函數(shù)的下方。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Qt實(shí)現(xiàn)數(shù)據(jù)進(jìn)行加密、解密的步驟
本文主要介紹了Qt實(shí)現(xiàn)數(shù)據(jù)進(jìn)行加密、解密的步驟,包含QCryptographicHash和Qt-AES兩種庫的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2024-03-03C++中獲取字符串長(zhǎng)度的函數(shù)sizeof()、strlen()、length()、size()詳解和區(qū)別(推薦)
在C++中計(jì)算長(zhǎng)度的函數(shù)有四種,它們分別是sizeof()?,size(),strlen(),str.length(),這篇文章主要介紹了C++中獲取字符串長(zhǎng)度的函數(shù)sizeof()、strlen()、length()、size()詳解和區(qū)別,需要的朋友可以參考下2023-02-02