青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

The Way of C++

  C++博客 :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
  55 Posts :: 0 Stories :: 19 Comments :: 0 Trackbacks

公告

The first time i use this blog, i will write something that i learn which i think is worth write down.

常用鏈接

留言簿(3)

我參與的團隊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

GDB的使用

  當程序出錯并產(chǎn)生core 時

  快速定位出錯函數(shù)的辦法

  gdb 程序名 core文件名(一般是core,也可能是core.xxxx)

  調(diào)試程序使用的鍵

  r run 運行.程序還沒有運行前使用

  c cuntinue 繼續(xù)運行。運行中斷后繼續(xù)運行

  q 退出

  kill 終止調(diào)試的程序

  h help 幫助

  <tab> 命令補全功能

  step 跟入函數(shù)

  next 不跟入函數(shù)

  b breakpoint 設(shè)置斷點。

  用法:

  b 函數(shù)名 對此函數(shù)進行中斷

  b 文件名:行號 對此文件中指定行中斷.如果是當前文件,那么文件名與:號可以

  省略

  看當前斷點數(shù)使用info break.禁止斷點disable 斷點號.刪除delete 斷點號.

  l list 列出代碼行。一次列10 行。連接使用list將會滾動顯示. 也可以在list 后面

  跟上 文件名:行號

  watch 觀察一個變量的值。每次中斷時都會顯示這個變量的值

  p print 打印一個變量的值。與watch不同的是print只顯示一次

  這里在順便說說如何改變一個 value. 當你下指令 p 的時候,例如你用 p b,

  這時候你會看到 b 的 value, 也就是上面的 $1 = 15.

  你也同樣可以用 p 來改變一個 value, 例如下指令 p b = 100 試試看,

  這時候你會發(fā)現(xiàn), b 的 value 就變成 100 了:$1 = 100.

  網(wǎng)上抄錄

  基本的使用方法簡介

  前言

  程序代碼中的錯誤可分為數(shù)類,除了最容易除錯的語法錯誤,編譯程序會告訴你錯誤所在外,大部分的錯誤都可以歸類為執(zhí)行時錯誤。GDB 的功能便是尋找執(zhí)行時錯誤。如果沒有除錯程序,我們只能在程序中加入輸出變量值的指令來了解程序執(zhí)行的狀態(tài)。有了 GDB 除錯程序,我們可以設(shè)定在任何地方停止程序的執(zhí)行,然后可以隨意檢視變量值及更動變量,并逐行執(zhí)行程序。

  一個除錯程序執(zhí)行的流程通常是這樣的:

  1. 進入除錯程序并指定可執(zhí)行文件。

  2. 指定程序代碼所在目錄。

  3. 設(shè)定斷點后執(zhí)行程序。

  4. 程序于斷點中斷后,可以 (1)檢視程序執(zhí)行狀態(tài);檢視變量值或變更變量值 (2) 逐步執(zhí)行程序,或是全速執(zhí)行程序到下一個斷點或是到程序結(jié)束為止。

  5. 離開除錯程序。

  以下將分為下列數(shù)項分別介紹:

  1. 進入 GDB 及指定可執(zhí)行檔

  2. 指定程序代碼所在目錄及檢視程序代碼

  3. 斷點的設(shè)定與清除

  4. 全速及逐步執(zhí)行程序

  5. 檢視及更改變量值

  6. 檢視程序執(zhí)行狀態(tài)

  7. 讀取 Core 文件信息

  進入 GDB 及指定可執(zhí)行檔:

  1. 進入 GDB 并讀入可執(zhí)行檔 (檔名為 'PROGRAM'),準備進行除錯。

  gdb PROGRAM

  指定程序代碼所在目錄及檢視程序代碼

  1. 增加目錄 DIR 到收尋程序代碼的目錄列表 (如果你的程序代碼和可執(zhí)行檔放在同一個目錄下,就不須指定程序代碼所在目錄。):

  (gdb) directory DIR

  2. 檢視程序代碼,格式計有:

  (gdb) list => 顯示目前執(zhí)行程序代碼前后各五行的程序代碼;或是顯示從上次 list 之后的程序代碼

  (gdb) list function => 顯示該程序開始處前后五行的程序代碼。

  (gdb) list - =>上次顯示程序代碼的前面的十行。

  斷點的設(shè)定與清除

  1. 設(shè)定斷點(指令為 break,可簡寫為 (b),格式計有:

  (gdb) break filename.c:30 => 在 filename.c 的第三十行處停止執(zhí)行。

  (gdb) break function => 在進入 function 時中斷程序的執(zhí)行。

  (gdb) break filename.c:function => 在程序代碼檔 filename.c 中的函數(shù) function 處設(shè)定斷點。

  (gdb) break => 在下一個將被執(zhí)行的命令設(shè)定斷點。

  (gdb) break ... if cond => 只有當 cond 成立的時候才中斷。cond 須以 C 語言的語法寫成。

  2. 顯示各個斷點的信息。

  (gdb) info break

  3. 清除斷點(命令為 clear),格式同 break 。例如 :

  (gdb) clear filename.c:30

  4. 清除斷點,NUM 是在 info break 顯示出來的斷點編號。

  (gdb) delete NUM

  全速及逐步執(zhí)行程序

  1. 從程序開頭全速執(zhí)行程序,直到遇到斷點或是程序執(zhí)行完畢為止。

  (gdb) run

  2. 在程序被中斷后,全速執(zhí)行程序到下一個斷點或是程序結(jié)束為止 (continue 指令可簡寫為 c)。

  (gdb) continue

  3. 執(zhí)行一行程序. 若呼叫函數(shù), 則將該包含該函數(shù)程序代碼視為一行程序 (next 指令可簡寫為 n)。

  (gdb) next

  4. 執(zhí)行一行程序. 若呼叫函數(shù), 則進入函數(shù)逐行執(zhí)行 (step 指令可簡寫為 s)。

  (gdb) step

  5. 執(zhí)行一行程序,若此時程序是在 for/while/do loop 循環(huán)的最后一行,則一直執(zhí)行到循環(huán)結(jié)束后的第一行程序后停止 (until 指令可簡寫為 u)。

  (gdb) until

  6. 執(zhí)行現(xiàn)行程序到回到上一層程序為止。

  (gdb) finish

  檢視及更改變量值

  1. print 敘述,顯示該敘述執(zhí)行的結(jié)果 (print 指令可簡寫為 p)。如

  (gdb) print a => 顯示 a 變量的內(nèi)容.

  (gdb) print sizeof(a) => 顯示 a 變量的長度.

  2. display 敘述,在每個斷點或是每執(zhí)行一步時顯示該敘述值。如

  (gdb) display a

  3. 更改變量值:

  (gdb) print (a=10) => 將變量 a 的值設(shè)定為 10.

  檢視程序執(zhí)行狀態(tài)

  1. 查看程序執(zhí)行到此時,是經(jīng)過哪些函數(shù)呼叫的程序 (backtrace 指令可簡寫為 bt),也就是查看函數(shù)呼叫堆棧。

  (gdb) backtrace

  讀取 Core 文件信息

  1. 讀入 PROGRAM 及 PROGRAM.CORE 檔,可檢視 Core Dump 時程序變量值及程序流程狀態(tài) 。

  gdb PROGRAM core

  說明:'core' 檔案是由 PROGRAM 檔執(zhí)行后,遇到 Core Dump 時產(chǎn)生的 Core 檔檔名。如果你還需要該 Core 檔,我們建議你將該檔案檔名更改為 PROGRAM.core。在輸入上述命令后,你可以用 GDB 提供的檢視變量值以及檢視程序執(zhí)行狀態(tài)來讀取程序 Core Dump 時的狀態(tài)。
posted on 2010-03-14 12:45 koson 閱讀(299) 評論(0)  編輯 收藏 引用 所屬分類: Linux
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美日韩精品在线播放| 国产精品视频导航| 在线观看欧美亚洲| 久久综合网hezyo| 久久综合九色综合网站| 亚洲高清成人| 亚洲黑丝在线| 欧美日韩国产成人高清视频| 99国产精品久久久| 亚洲网站在线看| 国产日韩欧美精品在线| 麻豆乱码国产一区二区三区| 久久综合九色99| 一本大道久久a久久精二百| 一区二区三区免费网站| 国产伦精品一区二区三区免费迷| 久久久久久亚洲精品杨幂换脸 | 91久久在线播放| 欧美国产在线观看| 欧美日韩国产精品一区| 小处雏高清一区二区三区 | 亚洲无限乱码一二三四麻| 国产精品欧美日韩一区二区| 久久久xxx| 欧美人与性动交cc0o| 亚洲欧美在线另类| 快射av在线播放一区| 一本色道久久综合亚洲精品小说| 亚洲综合色自拍一区| 激情视频一区二区三区| 一区二区激情小说| 亚洲二区视频| 亚洲在线视频一区| 亚洲激情专区| 午夜精品久久久久| 一区二区免费在线观看| 欧美在线综合| 亚洲资源在线观看| 男女精品网站| 久久久亚洲国产美女国产盗摄| 欧美日韩国产精品一区二区亚洲| 久久综合狠狠综合久久综合88| 欧美日韩国产一级片| 美玉足脚交一区二区三区图片| 欧美日韩一视频区二区| 亚洲成人资源| 激情久久久久久久| 亚洲综合视频网| av72成人在线| 欧美国产日韩亚洲一区| 麻豆精品精品国产自在97香蕉| 国产精品草莓在线免费观看| 亚洲激精日韩激精欧美精品| 在线观看亚洲精品视频| 欧美有码视频| 久久国产88| 国产欧美一区在线| 一级日韩一区在线观看| 国产精品99久久久久久久久| 欧美成人在线免费观看| 亚洲成色777777在线观看影院| 国产自产精品| 久久精品人人爽| 久久天天综合| 激情综合激情| 久久免费少妇高潮久久精品99| 久久露脸国产精品| 国产专区综合网| 久久久久久久久伊人| 久久综合久久久| 精品成人一区二区三区四区| 久久精品视频在线观看| 久久免费视频一区| 尤物在线观看一区| 另类图片国产| 亚洲国产精品女人久久久| 亚洲人成在线观看| 欧美福利视频在线观看| 亚洲精品欧美日韩专区| 亚洲天堂av在线免费观看| 欧美精品在线视频| 中文精品99久久国产香蕉| 欧美伊人久久久久久午夜久久久久| 国产精品国产三级国产专播精品人 | 亚洲欧美一区二区视频| 久久av资源网| 在线观看视频亚洲| 欧美精品手机在线| 亚洲午夜成aⅴ人片| 欧美自拍偷拍| 亚洲激情偷拍| 国产精品国产三级国产aⅴ浪潮| 亚洲一区二区成人| 久久性色av| 日韩午夜电影av| 国产精品美女久久久浪潮软件 | 欧美激情在线免费观看| 99ri日韩精品视频| 国产亚洲成精品久久| 久热成人在线视频| 一本色道久久综合亚洲精品按摩| 欧美专区在线| 亚洲精品永久免费| 国产欧美另类| 欧美人成在线| 久久九九国产精品| a4yy欧美一区二区三区| 久热精品视频在线| 亚洲一区二区三区久久| 亚洲成色www8888| 国产精品自拍在线| 欧美激情久久久久久| 欧美一区二区三区四区在线观看地址| 欧美成人免费一级人片100| 亚洲综合精品| 91久久精品国产91久久性色tv| 国产精品老女人精品视频| 麻豆精品视频在线| 欧美一级二级三级蜜桃| 亚洲免费大片| 亚洲第一中文字幕| 久久综合亚州| 欧美综合激情网| 亚洲一区二区高清| 日韩一级黄色av| 在线日韩av永久免费观看| 国产欧美一区视频| 国产精品qvod| 欧美日韩国产123| 欧美www视频在线观看| 久久精品123| 羞羞漫画18久久大片| 一本色道久久| 野花国产精品入口| 亚洲日本中文字幕免费在线不卡| 嫩草成人www欧美| 久久久久久久网| 久久久亚洲国产天美传媒修理工 | 亚洲激情自拍| 欧美韩日一区二区| 欧美+亚洲+精品+三区| 亚洲欧美视频在线| 亚洲视频在线观看三级| 一区二区日本视频| aⅴ色国产欧美| 一本久道久久久| 在线一区观看| 亚洲欧美久久久| 午夜一区二区三区在线观看| 亚洲免费伊人电影在线观看av| 一区二区三区免费网站| 中国成人在线视频| 亚洲视频网在线直播| 亚洲一区二区三区乱码aⅴ| 亚洲综合国产| 欧美影院视频| 久久在线播放| 亚洲国产高清高潮精品美女| 亚洲日本aⅴ片在线观看香蕉| 亚洲精品国产精品国自产在线 | 欧美一级二区| 久久久久亚洲综合| 欧美成年人视频| 欧美日韩国产a| 国产精品入口夜色视频大尺度| 国产精品一区二区在线观看| 国产亚洲欧美激情| 亚洲高清视频的网址| 99热精品在线| 午夜精品久久久久久99热| 久久九九国产| 亚洲激情影院| 亚洲深夜影院| 久久婷婷色综合| 欧美午夜不卡视频| 国产一区二区三区在线观看网站| 亚洲国产乱码最新视频| 亚洲一区免费观看| 久久综合九色九九| 日韩亚洲欧美精品| 欧美一区二区视频在线观看| 欧美va亚洲va香蕉在线| 国产精品爽爽爽| 亚洲日韩视频| 久久久成人精品| 亚洲精品中文字幕女同| 亚洲一区一卡| 欧美精品一区二区视频| 国产日韩专区在线| 一道本一区二区| 免费人成网站在线观看欧美高清| 亚洲免费黄色| 美女精品视频一区| 国产女主播一区二区| 一本色道久久99精品综合| 久久久久国产精品一区| 国产欧美一区二区精品忘忧草| 亚洲福利视频一区| 欧美在线视频观看| 亚洲天堂视频在线观看|