您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“Linux下如何調試c++代碼”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Linux下如何調試c++代碼”這篇文章吧。
1.編寫好代碼后,我們需要生成一個可執行文件去運行程序。
g++ -g test.cpp -o test
如上指令,我們通過g++去編譯test.cpp,并生成可執行文件test
2.運行可執行文件test
./test
3.接著進行代碼的調試,在命令行輸入gdb,然后進入了gdb的環境下。
gdb
4.然后輸入file main,這樣我們就告訴gdb我們要調試main工程
file main
5.然后我們輸入l,就可以羅列出當前代碼的信息
l
6.輸入b加函數名或b加行號,可在相應位置設置斷點
b main (在main函數處設置斷點)
b 5 (在第5行設置斷點)
7.加下來輸入r,我們開始運行代碼,然后代碼就停止到設置的斷點處
r
8.然后輸入s,單步進入函數體
s
9.可以輸入n,進行單步的調試
n
10.看到一個變量num的值,然后我們輸入print num,參看變量值
print num
11.輸入c,程序繼續執行
c
相應參數說明
1、file
加載被調試的可執行程序文件。因為一般都在被調試程序所在目錄下執行GDB,因而文本名不需要帶路徑。
示例:(gdb) file gdb-sample
2、r
Run的簡寫,運行被調試的程序。如果此前沒有下過斷點,則執行完整個程序;如果有斷點,則程序暫停在第一個可用斷點處。
示例:(gdb) r
3、c
Continue的簡寫,繼續執行被調試程序,直至下一個斷點或程序結束。
示例:(gdb) c
4、b
b
b *
b *
b: Breakpoint的簡寫,設置斷點。兩可以使用“行號”“函數名稱”“執行地址”等方式指定斷點位置。
其中在函數名稱前面加“*”符號表示將斷點設置在“由編譯器生成的prolog代碼處”。如果不了解匯編,可以不予理會此用法。
5、set args [parameter]
gdb調試的時候,設置命令行參數。
6、bt
bt可以去查看堆棧信息。down和up和一個一個打印堆棧信息。bt直接打印全部堆棧信息。
7、n
單步調試
8、s
單步進入
以上是“Linux下如何調試c++代碼”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。