您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“Linux下如何調試c語言”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Linux下如何調試c語言”這篇文章吧。
指令:
1.編譯:gcc -o xxx xxx.c
2.生成可調試文件:gcc -o xxx -g xxx.c
3.調試程序:gdb xxx
4.執行程序:
start 從程序第一步開始執行
run 直接運行程序到結束或者斷點處
5.設置斷點:break line(行數)或函數名或者條件表達式
break 6 在第6行設置斷點
break Swap 在Swap函數入口設置斷點
break 6 if i == 10 在第6行設置斷點,要求i == 10
6.刪除斷點:
clear 刪除所有斷點
clear 行號 : 刪除這行的斷點
clear 函數名 : 刪除該函數的斷點
7.info 查看斷點
8.c 繼續執行到下一個斷點
9.print +變量 打印變量值
10.n 下一步
11.q 退出調試
一、我們以“交換兩個數的值”為例進行調試,代碼如下:
//我們這里使用第三個值進行交換,是為了方便在調試過程中查看變量的值 void Swap(int* number1,int* number2) { int tmp=(*number1); (*number1)=(*number2); (*number2)=tmp; } int main() { int x=2; int y=3; Swap(&x,&y); retrun 0; }123456789101112131415
二、按下圖步驟做好調試前的準備:
三、調試內容(請按照以下序號順序輸入指令): ①運行程序:(gdb) run
根據上圖顯示,程序正常運行并退出
②設置斷點:(gdb) break 12(行數或者函數名)
③開始調試:(gdb) run
根據上圖顯示,程序從斷點處開始執行,即第12行處。
④打印變量值:(gdb) print x(變量名)
根據上圖顯示,打印第11行的變量x,顯示值為2
⑤繼續執行下一步:(gdb) n
⑥跳轉到下一個斷點:(gdb) c
根據上圖顯示,在第6行設置了第二個斷點(第一個斷點在第12行),輸入“c”,直接跳轉到第6行,即第二個斷點處。
⑦繼續執行,直到退出函數:(gdb) n
⑧打印Swap函數執行后變量的值: (gdb) print x (gdb) print y
⑨退出調試:(gdb) q
以上是“Linux下如何調試c語言”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。