Vim與GCC和gdb完美組合


一、vim

vim修改一下配置文件后,如果你稍微會點vim的命令使用,那可比一般的編輯器好用啊,如果一點不會vim的命令使用,就跟一般編輯器一樣使用。

打開etc/vim/vimrc文件

 

這里的引號是注釋的意思。

去掉引號就可以了,我說明一下某些set的意思,其他的可以自己網上搜搜是啥意思,其實后面英文有注釋的。如果自己的配置文件里面沒有,可以手動添加。

set mouse=a 在終端中可以使用鼠標

set ignorecase 查找時忽略大小寫

set nu 自動添加行號

set ai 自動縮進

set smartindent 智能對齊

set encoding=cp936 設置當前字符編碼為windows簡體中文

set tabstop=4 設置TAB鍵為4個空格

按下面我修改的一些就可以很利索的使用vim:

編輯.c文件的效果是:

二、GCC

gcc方面的資料網上應該一大堆http://blog.csdn.net/yyaong_520/article/details/6766820

一般情況下,我只用一個

-o的命令:

還有一個-g的命令:指示編譯程序在目標代碼中加入供調試程序gdb使用的附加信息。在使用gdb調試的時候,最好加上這個選項。

三、gdb

我習慣以一個可執行程序作為gdb的參數啟動gdb

gdb first(first問gcc的輸出結果)

(注意,gcc加了-g選項)

下面說幾個調試時常用到的幾個選項。

list 顯示源文件:

                        list                                   沒有參數,顯示當前行之后或周圍的10多行

                        list start,end                    顯示從行號start到end之間的代碼行。

print 查看運行時的數據

                        print i                                顯示當前變量i的值

                        print &i                              顯示變量i的存放地址

                        print array@5                   顯示從array(數組名)開始的5個值

                        print array[2]@3               顯示從array第二個元素開始的3個數組元素的值

                        whatis i                             顯示變量i的數據類型

設置斷點 break

                        break linenum                   在當前文件指定行linenum處設置斷點

                        break function                   在當前文件函數function的入口處設置斷點

顯示斷點 info

                        info breakpoints/break/watchpoints  [num]

單步跟蹤

                        step [N]                              如果遇到函數調用,並且該函數編譯時有調試信息,則會進入該函數內執行。

                        next [N]                              遇到函數調用時,執行整個函數。

連續執行

                        continue                             從當前行開始,連續執行到下一個斷點處,或者到達該程序結束。命令中可以給出一個數字N,忽略其后N-1次斷點

運行程序 run

另外幾個:clear(清除所有已定義的斷點),delete(刪除所有斷點,后面可給出斷點號碼,多個斷點用空格分開),disable(停用指定斷點,停用多個則用空格分開),enable(激活被停用的斷點,各斷點號碼用空格分開)

我的博客中有個“gdb的簡單使用


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM