linux跳出命令Gdb linux跳到命令行開頭

linux入門基礎(chǔ)(四)Gdb調(diào)試程序

Gdb調(diào)試

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了寧津免費(fèi)建站歡迎大家使用!

注意:在Gcc編譯選項(xiàng)中一定要加入

–g

退出GDB:quit

Ctrl+d

調(diào)試過程:

1.

查看文件

命令:

(gdb)

l

命令:(gdb)

b

行號

注:到第17行停止,并沒有執(zhí)行17行

3.

查看斷點(diǎn)情況

info

b

4.

運(yùn)行代碼

r

命令:

(gdb)

r

(也可以指定行開始運(yùn)行,在r后面加上行號)

5.

查看變量值

p

命令:(gdb)

p

變量名

6.

設(shè)置監(jiān)視點(diǎn):

watch

z

(變量名)

也可以是復(fù)雜的表達(dá)式

7.

單步運(yùn)行

命令:(gdb)

n

(逐過程)

8.逐步,會進(jìn)入函數(shù)

命令:(gdb)

s

9.條件斷點(diǎn)

將正常斷點(diǎn)轉(zhuǎn)變?yōu)闂l件斷點(diǎn):condition

如:condition

1

i

==

10

只有當(dāng)滿足條件i

==

1時(shí),才會在斷點(diǎn)1處暫停

10.

恢復(fù)程序運(yùn)行

c

命令:

(gdb)

c

(程序就會運(yùn)行,如果沒有斷點(diǎn),就運(yùn)行剩下部分,如果有斷點(diǎn),就會運(yùn)行到下一個(gè)斷點(diǎn))

11.

去除斷點(diǎn)

clear

line_number

clear

filename:line_number

12.

help

12.1

help找出類別

12.2help從列表中

Linux 里面的gdb到底是個(gè)什么東西?

分類: 電腦/網(wǎng)絡(luò) 操作系統(tǒng)/系統(tǒng)故障

問題描述:

第一次在Linux上工作,要用到一個(gè)什么gdb的東東。gdb到底是什么呢,各位老大?

解析:

Linux 包含了一個(gè)叫 gdb 的 GNU 調(diào)試程序. gdb 是一個(gè)用來調(diào)試 C 和 C++ 程序的強(qiáng)力調(diào)試器. 它使你能在程序運(yùn)行時(shí)觀察程序的內(nèi)部結(jié)構(gòu)和內(nèi)存的使用情況. 以下是 gdb 所提供的一些功能:

它使你能監(jiān)視你程序中變量的值.

它使你能設(shè)置斷點(diǎn)以使程序在指定的代碼行上停止執(zhí)行.

它使你能一行行的執(zhí)行你的代碼.

在命令行上鍵入 gdb 并按回車鍵就可以運(yùn)行 gdb 了, 如果一切正常的話, gdb 將被啟動并且你將在屏幕上看到類似的內(nèi)容:

GDB is free sofare and you are wele to distribute copies of it

under certain conditions; type "show copying" to see the conditions.

There is absolutely no warranty for GDB; type "show warranty" for details.

GDB 4.14 (i486-slakware-linux), Copyright 1995 Free Sofare Foundation, Inc.

(gdb)

當(dāng)你啟動 gdb 后, 你能在命令行上指定很多的選項(xiàng). 你也可以以下面的方式來運(yùn)行 gdb :

gdb fname

當(dāng)你用這種方式運(yùn)行 gdb , 你能直接指定想要調(diào)試的程序. 這將告訴gdb 裝入名為 fname 的可執(zhí)行文件. 你也可以用 gdb 去檢查一個(gè)因程序異常終止而產(chǎn)生的 core 文件, 或者與一個(gè)正在運(yùn)行的程序相連. 你可以參考 gdb 指南頁或在命令行上鍵入 gdb -h 得到一個(gè)有關(guān)這些選項(xiàng)的說明的簡單列表.

gdb怎么用

GDB調(diào)試,建議去下個(gè)系統(tǒng)的文檔;

GDB調(diào)試器

GCC用于編譯程序,而Linux的另一個(gè)GNU工具gdb則用于調(diào)試程序。gdb是一個(gè)用來調(diào)試C和C++程序的強(qiáng)力調(diào)試器,我們能通過它進(jìn)行一系列調(diào)試工作,包括設(shè)置斷點(diǎn)、觀查變量、單步等。

其最常用的命令如下:

file:裝入想要調(diào)試的可執(zhí)行文件。

kill:終止正在調(diào)試的程序。

list:列表顯示源代碼。

next:執(zhí)行一行源代碼但不進(jìn)入函數(shù)內(nèi)部。

step:執(zhí)行一行源代碼而且進(jìn)入函數(shù)內(nèi)部。

run:執(zhí)行當(dāng)前被調(diào)試的程序

quit:終止gdb

watch:監(jiān)視一個(gè)變量的值

break:在代碼里設(shè)置斷點(diǎn),程序執(zhí)行到這?鍤憊移?

make:不退出gdb而重新產(chǎn)生可執(zhí)行文件

shell:不離開gdb而執(zhí)行shell

2)從你的描述上看來,你是用單獨(dú)的gdb.exe調(diào)試器,調(diào)試的時(shí)候不需要運(yùn)行程序的,編譯的時(shí)候 只要加上相應(yīng)的參數(shù)(”-g“)產(chǎn)生編譯后的可執(zhí)行文件,

以gcc編譯sum.c(加-g選項(xiàng)產(chǎn)生debug信息):

gcc –g –o sum sum.c

在命令行上鍵入gdb sum并按回車鍵就可以開始調(diào)試sum了,再運(yùn)行run命令執(zhí)行sum。

linux 中root切換到的gdb后,怎樣再切換到root

Ctrl + Alt 然后按F1 ,進(jìn)去一個(gè)黑屏界面,然后在login As 那里輸入root ,接著就是密碼,這樣,就算/root 目錄不存在也可以進(jìn)入系統(tǒng)的。

然后,你輸入 mkdir /root ,看能不能新建 /root目錄。如果能,你就可以重新按住Ctrl+Alt + F5(忘了,好像是F6,F(xiàn)7),重新進(jìn)入圖形 界面,再次凳錄。

方法二 ,也可以在進(jìn)入字符界面后,vi /etc/passwd

將第一行

root:x:0:0:root:/root:/bin/bash

改為

root:x:0:0:root:/home:/bin/bash

將桌面設(shè)在/home目錄。(不推薦)

另外,站長團(tuán)上有產(chǎn)品團(tuán)購,便宜有保證

標(biāo)題名稱:linux跳出命令Gdb linux跳到命令行開頭
文章分享:http://muchs.cn/article8/doecjip.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、自適應(yīng)網(wǎng)站、網(wǎng)站設(shè)計(jì)、搜索引擎優(yōu)化、App開發(fā)、移動網(wǎng)站建設(shè)

廣告

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

搜索引擎優(yōu)化