1. 程式人生 > >gdb 除錯時指定跳到第幾行

gdb 除錯時指定跳到第幾行

假設要從當前位置(main.c, ln 18)跳到 main.c, ln 21,忽略中間的 main.c, ln 19 ~ ln 20,可以這樣做:(jump 縮寫是 j)

(gdb) b 21

(gdb) j 21

在 (gdb) c 之後,gdb 會跳過 ln 19 ~ ln 20,停在 ln 21

注意:

1)要在 ln 21 設定斷點,否則 gdb 會在 jump 到 ln 21 之後繼續執行,直到下一個斷點或程式結束

2)如果要忽略的是一個函式呼叫,比如像下面這樣,執行到 ln 10,要跳到 ln 12

10 i++;

11 i = foo();

12 i--;

可以:

(gdb) step

(gdb) return

即,進入 foo(),然後直接返回。但是,要小心 foo() 的返回值。如果這樣做不方便的話,採用上面的方法,即

(gdb) b12

(gdb) j 12

也可以

相關推薦

gdb 除錯指定

假設要從當前位置(main.c, ln 18)跳到 main.c, ln 21,忽略中間的 main.c, ln 19 ~ ln 20,可以這樣做:(jump 縮寫是 j) (gdb) b 21 (gdb) j 21 在 (gdb) c 之後,gdb 會跳過 ln 19

資料庫讀取資料如何讀取指定特定的(分頁用)

 mysql 不支援top n的寫法 top n的寫法是sql server 和access的寫法 mysql 只支援 limit n的寫法 select * from table limit <offset>,<rows> offset為開始記錄索引

MySql語句

select 語句 tab esc 查詢 mit 自增 from 記錄 1、查詢第一行記錄: select * from table limit 1 2、查詢第n行到第m行記錄 select * from table1 limit n-1,m-n; SELECT * FRO

gdb除錯顯示陣列

可以用下面的方法來顯示陣列 p *[email protected]   其中p相當於print,array就是陣列首地址,也可以是陣列名,len是想要顯示的陣列的長度。 比如我有一個數組的定義 int a[] = {1, 2, 3, 4, 5}; &nb

查詢Catalina.out的日誌

在CentOS下,開啟較大日誌檔案時可能會導致伺服器卡死,如何避免這個問題? 多數情況下,我們僅需要其中幾行日誌,用於排查問題。 例1:查詢前100條日誌 [[email protected] ~]# cd /usr/local/tomcat/logs/ [[email

DELPHI dbgrid 選中的是 怎麽判斷?

alt 使用 query str .text int edit for tex 使用DataSource.DataSet.RecNo可以得到dbgrid選中的是第幾行,示例代碼如下: procedure TForm1.btn1Click(Sender: TObject

DELPHI dbgrid 選中的是 怎麼判斷?

使用DataSource.DataSet.RecNo可以得到dbgrid選中的是第幾行,示例程式碼如下: procedure TForm1.btn1Click(Sender: TObject); begin ShowMessage(IntToStr(dbgrd1.DataSource.Data

使用gdb除錯出現:Missing separate debuginfos, use: debuginfo-install glibc-2.12-1.212.el6.i686的解決辦法

        今天在redhat6.3(32位)下使用gdb除錯程式的時候,出現一段警告,在此總結出解決辦法,方便後來的學者: 提示需要使用debuginfo安裝glibc-2.12-1.212.el6.i686,但是這裡有個問題:linux系統下有debuginfo嗎?

編寫MapReduce :統計每個關鍵詞,所在檔案及,出現了多少次

import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; import java.util.HashMap; import java.util.Map; import org.a

獲取的是 string 型別的欄位,直接輸出 數字 或者 需要的

Freight = driver.find_element_by_xpath("//tbody/tr/td[6]").text print(type(Freight)) # 這裡輸出的是 string 型別 print(Freight.split("\n")[1]) # 這裡輸出的 運費金額:6.31

gdb除錯檢視記憶體

x/<n/f/u> <addr> n、f、u是可選的引數,<addr>表示一個記憶體地址 1) n 是一個正整數,表示顯示記憶體的長度,也就是說從當前地址向後顯示幾個地址的內容 2) f 表示顯示的格式 3) u 表示將多少個位元

linux下檢視檔案內容的方法

一,方法1 nl file-name |sed -n '5p'檢視第五行 二,方法2 head -n file_name|tail -1 檢視第n行三,方法3  .輸出一個檔案的第4行sed -

shell 讀取檔案 列的值

1 .  問題:  讀取 list檔案(內容如下) 中 NO1  和NO2 的值  platform                      NO1            NO2  --------------------         -----------

列印內容-shell

HLdeMacBook-Air:~ hl$ more file.txt Line 1 Line 2 Line 3 Line 4 Line 5 Line 6 Line 7 Line 8 Line 9 Line 10 HLdeMacBook-Air:~ hl$ 檔案file

查詢某條記錄在資料庫中是

例子: 查詢hotelcode 為1942957 的記錄在資料庫中是第幾行 select tt.rn, tt.* from(select t.*, rownum rn from gds.t_falc

Linux--查詢檔案的命令

cat catalina.out | tail -n +14000 | head -n 10000 | sort | uniq -c linux 如何顯示一個檔案的某幾行(中間幾行) 【一】從第3000行開始,顯示1000行。即顯示3000~3999行 c

asp.net中GridView內部點選事件判斷是並獲取row資料

前臺:  <asp:GridView ID="grid" runat="server" class="com_table" AutoGenerateColumns="False">  &l

js table 以列作為標準合併

function autoRowSpan(tb,row,col) { //合併表格 引數: tableid,第幾行,第幾列  以第幾行的第幾列作為標準合併var lastValue=""; var value=""; var pos=1; for(var i=row;i&l

mysql對查出的資料排序並計算出某條資料排在

SELECT * FROM( SELECT *, @curRank := @curRank + 1 AS rank FROM (SELECT CT u2.uuid as as uuid, d, u2.user_ner_name AS user_name, e, u2.fr

c獲取檔案的名字和執行到程式的功能

可以通過__FILE__和__LINE__兩個巨集獲取檔案的名字和程式碼執行的行數 #include<stdio.h> int main(){ printf("file:%s line:%