linux設(shè)置斷點(diǎn)命令 linux設(shè)置斷開時(shí)間

Linux中如何使用斷點(diǎn)

編譯程序的時(shí)候 加上 -g 選項(xiàng),它能在程序中加入調(diào)試信息。從而可以

成都創(chuàng)新互聯(lián)公司從2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元耀州做網(wǎng)站,已為上家服務(wù),為耀州各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18980820575

使用GDB調(diào)試。

例如: gcc test.c -g -o test

然后 輸入 gdb test ,進(jìn)入gdb 調(diào)試, list 命令列出代碼。

在哪一行設(shè)置斷點(diǎn)就輸入 break n ,

比如在第10行 就是 break 10 ,

run 是運(yùn)行程序,到斷點(diǎn)出 就停止,

print 變量名 可以觀察變量的值,

cont 是繼續(xù)運(yùn)行,

n 是 next ,一步一步執(zhí)行

你上網(wǎng)再搜索一些 關(guān)于 gdb 的信息 ,就可以了

使用GNU/gdb調(diào)試Linux C/C++可執(zhí)行程序查看出錯(cuò)源代碼、設(shè)置斷點(diǎn)

gdb是GNU開源組織發(fā)布的一個(gè)強(qiáng)大的Linux程序調(diào)試工具,比圖形化的調(diào)試工具更強(qiáng)大,主要來調(diào)試C/C++語言程序。

Debug 版本的可執(zhí)行程序包含調(diào)試信息,用于程序員調(diào)試程序。

Release 版本的可執(zhí)行程序往往是進(jìn)行了各種優(yōu)化,使得程序在代碼大小和運(yùn)行速度上都是最優(yōu)的,以方便用戶使用。

用gcc/g++編譯時(shí),要加上-g選項(xiàng)生成debug版本的可執(zhí)行程序,否則就無法使用gdb調(diào)試了。

r 表示開始run, 如果在運(yùn)行的過程中發(fā)生了錯(cuò)誤,比如segmentation fault,可以查看此時(shí)的出錯(cuò)源代碼:

通過b或者break設(shè)置斷點(diǎn),斷點(diǎn)的設(shè)置可以通過函數(shù)名、行號(hào)、文件名+函數(shù)名、文件名+行號(hào)以及偏移量、地址等進(jìn)行設(shè)置。

比如在function Peer_auto_save上設(shè)置斷點(diǎn),在peer.c的第136行設(shè)置斷點(diǎn):

從斷點(diǎn)處繼續(xù)運(yùn)行

退出gdb

linux斷點(diǎn)調(diào)試命令窗口讀數(shù)據(jù)

在Linux斷點(diǎn)調(diào)試命令窗口中讀取數(shù)據(jù),可以使用以下命令:

1. x/nfu addr: 使用指定的格式和大小從指定地址讀取數(shù)據(jù)。n表示要讀取的數(shù)據(jù)數(shù)量,f表示數(shù)據(jù)格式,u表示數(shù)據(jù)大小。

2. info registers: 查看當(dāng)前程序中各個(gè)寄存器的值。

3. disassemble: 查看當(dāng)前程序指令的匯編代碼。

4. print: 打印當(dāng)前程序的變量的值。

5. stepi/si: 執(zhí)行一條匯編指令。

6. nexti/ni: 執(zhí)行一條匯編指令,但不進(jìn)入函數(shù)體內(nèi)部。

本文標(biāo)題:linux設(shè)置斷點(diǎn)命令 linux設(shè)置斷開時(shí)間
本文來源:http://www.muchs.cn/article14/dogipde.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器移動(dòng)網(wǎng)站建設(shè)、網(wǎng)站營銷網(wǎng)站設(shè)計(jì)公司、ChatGPT、

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司