中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

gdb調試技術

發布時間:2020-04-11 12:41:24 來源:網絡 閱讀:504 作者:snprintf 欄目:系統運維

        自從1969年Unix系統誕生以來,開發該系統的兩位牛人Dennis Ritchie和Ken Thompson就琢磨著怎么移植到別的機器上。經過幾番折騰,最后在B語言的基礎上搞出一門新語言,這就是現在仍活躍在舞臺,并且看起來還毫無頹勢的C語言。用C語言重寫Unix內核后,也讓C語言和Unix系統的關系難以分離。所以linux下學習C語言能很容易理解它的一些本質,就像為什么C語言是大小寫區分,因為Unix是大小寫區分。

         C語言之所以能寫操作系統,是因為它能操作內存。學習C語言最難也是最根本的就是指針,而指針就是操作內存的。要知道程序在內存中是怎么存儲和運行的,就得使用類Unix系統下大名鼎鼎的GDB。

         面向應用的學習,所以現看看幾個基礎的命令后,對于用到的命令再補充。首先對于要調試的程序在編譯時要加上-g參數,把相關調試信息加入到目標文件中。對于用過vc6.0的人來說,總覺得gdb是命令行,用起來不是很順,還總是懷疑能不能實現vc6.0的功能。等你熟悉gdb后,你會鄙視vc6.0那樣的圖形化調試工具。

         gdb   -q  a.out   // 運行a.out,-q(quiet)不打印一些與gdb相關的信息。

         l (list)

格式:

         list  <arguments>

         默認情況下是列出當下行的后面10行,而要顯示前10行,用 - 參數。當前行是指在用list列出的第一行代表的行,而列出后,當前行仍然是原來的行。即list列出的第一行就是顯示后的當前行。

        num1,num2顯示num1和num2間的行,兩個參數中一個可以可以為空,代表顯示10行,從num1開始或者顯示到num2。行的前面還可以指定文件名。表顯示該文件的num1到num2。默認是當前文件。

         function,顯示函數function開始的10行。函數名前還可指定文件名。

         *address,另外,還可以以地址作參數,以行所在內存中的地址前加*。

         要是只給出一個參數,則以該參數為中心顯示上下5行。

         show  listsize 顯示當下默認顯示的行數。

          set listsize <counts>設置默認顯示的行數。

待續...

 

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

花莲县| 轮台县| 嘉义县| 额济纳旗| 漳平市| 南昌市| 万荣县| 六安市| 广宗县| 雅江县| 凌云县| 通化县| 乌什县| 六安市| 墨玉县| 汶上县| 麦盖提县| 乐平市| 达孜县| 逊克县| 自贡市| 景东| 肥东县| 阳西县| 来宾市| 白河县| 本溪| 凤山市| 和硕县| 申扎县| 玉溪市| 淮滨县| 上高县| 伊金霍洛旗| 嘉定区| 芜湖市| 湘西| 工布江达县| 普定县| 明光市| 辽源市|