新聞中心
Debug和Release:
Debug:包含調(diào)試信息,不優(yōu)化版本
Debug文件夾:調(diào)試版本的可執(zhí)行程序
Release:已經(jīng)優(yōu)化的版本
優(yōu)化:可能包括地址的改變等,release 出現(xiàn)的問題debug可能沒有,debug出現(xiàn)的問題release可能沒有。
Release文件夾:優(yōu)化版本的可執(zhí)行程序
IDE:集成開發(fā)環(huán)境vs2022-IDE-集成開發(fā)環(huán)境=編輯器+編譯器+調(diào)試器
Linux:
gcc-編譯器(C++編譯器)
gdb-調(diào)試器
快捷鍵F5:啟動調(diào)試,跳到斷點處
斷點在循環(huán)中可多次停下(只要符合條件)
斷點中可以設(shè)置停下來的條件
調(diào)試過程中,箭頭指向下一條執(zhí)行的語句·
F10,逐過程,跳過自定義函數(shù)
F11:逐語句,進(jìn)入函數(shù)內(nèi)部
綠色開始鍵:可以實現(xiàn)跳躍執(zhí)行
CTRL+F5:直接執(zhí)行,不會在斷點停下
調(diào)試窗口:監(jiān)視/自動窗口/局部變量:變量變化
監(jiān)視數(shù)組:進(jìn)入函數(shù)中內(nèi)部難以監(jiān)視,輸入數(shù)組名,n元素個數(shù),觀察到前n個元素的值
內(nèi)存:地址:&a 或者地址的16進(jìn)制
內(nèi)存顯示的內(nèi)容:地址 內(nèi)容 參考信息
反匯編:代碼在匯編代碼是怎么樣的
寄存器:觀察到寄存器的值
調(diào)用堆棧:模擬函數(shù)調(diào)用邏輯
變量名和寄存器的值
拓展:
數(shù)據(jù)結(jié)構(gòu):
棧:從頂放,從頂出
1.使用assert
斷言:assert(exp1)
表達(dá)式如果為假就報錯,如果為真就就不發(fā)生。
assert在realease中優(yōu)化
2.盡量用const
3.養(yǎng)成良好的編碼風(fēng)格
4.必要的注釋
5.避免編碼陷阱
eg:1.傳址函數(shù)中避免地址為空指針:用assert對指針為空的情況判錯
2.加const防止地址被修改
const 修飾指針變量時:
int* const p:修飾的是p,不能變p指向的變量,p指向的變量的值可以變,
const int *p:修飾的是p指向的對象,p指向的對象可變,p指向的變量不能變,
const int * const p:修飾的是p和p指向的對象,p指向的對象不變,p指向的變量不能變
3.根據(jù)正負(fù)等選擇合適的返回值
4.軟件everything來看代碼
5.常量字符串是不能改的
常見錯誤:編譯錯誤:
鏈接錯誤:
無法解析外部符號xxx
找xxx
運行錯誤:
語法正確,結(jié)果不是我們想要的。
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
分享名稱:c語言:調(diào)試-創(chuàng)新互聯(lián)
本文鏈接:http://fisionsoft.com.cn/article/dcogci.html