欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

如何利用Emacs來(lái)調(diào)試C++程序

 更新時(shí)間:2016年03月30日 09:16:10   投稿:hebedich  
本文給大家分享的是使用編輯器中的神器Emacs來(lái)調(diào)試C++程序的方法,非常的細(xì)致全面,有需要的小伙伴可以參考下

俗話說(shuō),Emacs是神的編輯器,而Vim是編輯器之神。高手程序員都是用這兩樣神器進(jìn)行開(kāi)發(fā)。本人覺(jué)得,Emacs之所以厲害,是因?yàn)樵S多在其他編輯器下必須用鼠標(biāo)點(diǎn)選很多步的操作,在Emacs下都可以通過(guò)鍵盤來(lái)完成。大大地節(jié)省了你在顯示器上找按鈕的時(shí)間。Emacs在Linux上運(yùn)行感覺(jué)比windows流暢些,用Emacs編輯程序時(shí),手基本不用離開(kāi)鍵盤,就可以完成所有的工作。那么今天就讓我們看看如何利用Emacs來(lái)調(diào)試C++程序。

一、安裝Emacs和GCC

下載地址:Emacs:http://www.gnu.org/software/emacs/

GCC:http://gcc.gnu.org/

二、配置emacs和GCC

Emacs建議大家把顯示行號(hào)打開(kāi)。具體操作是:在C:\Users\maple\AppData\Roaming下有個(gè).emacs文件,打開(kāi)它,加入(global-linum-mode t)并保存,注意括號(hào)也要一并寫上。

GCC添加路徑到Path環(huán)境變量,確保在cmd下用g++命令能正確執(zhí)行。

三、寫程序,編輯

我們新建一個(gè)文件,然后用Emacs打開(kāi)(Emacs的操作方式有時(shí)間再介紹了,大家可以跟著里面自帶的教程學(xué)習(xí))。

我們先保存。然后利用Emacs調(diào)用GCC,按S-M-1

出現(xiàn)讓你輸入shell命令,在這就是控制臺(tái)命令啦。我們輸入g++ testdbg.cpp -g -o testdbg.exe

編譯正確。這時(shí)我們打開(kāi)Tools->GDB進(jìn)行調(diào)試,我們發(fā)現(xiàn),Emacs多了幾個(gè)按鈕。如下圖:

四、調(diào)試

1、設(shè)置斷點(diǎn)

輸入break 5,表示在第五行設(shè)置斷點(diǎn),我們發(fā)現(xiàn)左邊多了個(gè)小紅點(diǎn)。那就是斷點(diǎn)的位置。

2、運(yùn)行程序

輸入run執(zhí)行程序,程序執(zhí)行后停在斷點(diǎn)處。

3、單步執(zhí)行

輸入step能夠單步執(zhí)行,在GDB中,直接按回車能重復(fù)上一步的動(dòng)作。

4、打印變量

使用print 變量,能打印出當(dāng)前變量的值。

五、總結(jié)

使用Emacs,擺脫了各種IDE的束縛,能夠極快地進(jìn)行小模塊的開(kāi)發(fā),Emacs還帶有查看十六進(jìn)制文件的功能,在linux上,替代了winhex的工作,能進(jìn)行文件的比較,這些以后有時(shí)間再講到。GDB是GCC附加的一個(gè)功能強(qiáng)大的調(diào)試器,深受廣大程序員的喜愛(ài),其中關(guān)于GDB的資料,大家可以查查手冊(cè)。

相關(guān)文章

  • 淺談C語(yǔ)言中結(jié)構(gòu)體的初始化

    淺談C語(yǔ)言中結(jié)構(gòu)體的初始化

    本篇文章是對(duì)C語(yǔ)言中結(jié)構(gòu)體的初始化進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C語(yǔ)言深入探究函數(shù)的溯源

    C語(yǔ)言深入探究函數(shù)的溯源

    函數(shù)是一組一起執(zhí)行一個(gè)任務(wù)的語(yǔ)句。每個(gè) C 程序都至少有一個(gè)函數(shù),即主函數(shù) main() ,所有簡(jiǎn)單的程序都可以定義其他額外的函數(shù)
    2022-04-04
  • C語(yǔ)言單鏈表的圖文示例講解

    C語(yǔ)言單鏈表的圖文示例講解

    單鏈表是鏈表的其中一種基本結(jié)構(gòu)。一個(gè)最簡(jiǎn)單的結(jié)點(diǎn)結(jié)構(gòu)如圖所示,它是構(gòu)成單鏈表的基本結(jié)點(diǎn)結(jié)構(gòu)。在結(jié)點(diǎn)中數(shù)據(jù)域用來(lái)存儲(chǔ)數(shù)據(jù)元素,指針域用于指向下一個(gè)具有相同結(jié)構(gòu)的結(jié)點(diǎn)。?因?yàn)橹挥幸粋€(gè)指針結(jié)點(diǎn),稱為單鏈表
    2023-02-02
  • C語(yǔ)言結(jié)構(gòu)體指針案例解析

    C語(yǔ)言結(jié)構(gòu)體指針案例解析

    這篇文章主要介紹了C語(yǔ)言結(jié)構(gòu)體指針案例解析,本文通過(guò)例子來(lái)解釋說(shuō)明了C語(yǔ)言的結(jié)構(gòu)體概念和如何用指針去操作結(jié)構(gòu)體,文章標(biāo)明了詳細(xì)的代碼,需要的朋友可以參考下
    2021-07-07
  • 詳解C語(yǔ)言解決經(jīng)典問(wèn)題之兔子產(chǎn)子

    詳解C語(yǔ)言解決經(jīng)典問(wèn)題之兔子產(chǎn)子

    有一對(duì)兔子,從出生后的第 3 個(gè)月起每個(gè)月都生一對(duì)兔子。小兔子長(zhǎng)到第 3 個(gè)月后每個(gè)月又生一對(duì)兔子,假設(shè)所有的兔子都不死,問(wèn) 30 個(gè)月內(nèi)每個(gè)月的兔子總數(shù)為多少?本文將用C語(yǔ)言解決這一經(jīng)典問(wèn)題,需要的可以參考一下
    2022-03-03
  • C++ 壓縮文件及文件夾方法 使用zlib開(kāi)源庫(kù)

    C++ 壓縮文件及文件夾方法 使用zlib開(kāi)源庫(kù)

    下面小編就為大家分享一篇C++ 壓縮文件及文件夾方法 使用zlib開(kāi)源庫(kù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-03-03
  • C語(yǔ)言數(shù)據(jù)結(jié)構(gòu)之堆、堆排序的分析及實(shí)現(xiàn)

    C語(yǔ)言數(shù)據(jù)結(jié)構(gòu)之堆、堆排序的分析及實(shí)現(xiàn)

    堆是一個(gè)近似完全二叉樹的結(jié)構(gòu),并同時(shí)滿足堆積的性質(zhì),下面這篇文章主要給大家介紹了關(guān)于C語(yǔ)言數(shù)據(jù)結(jié)構(gòu)之堆、堆排序的分析及實(shí)現(xiàn)的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • C++實(shí)現(xiàn)LeetCode(81.在旋轉(zhuǎn)有序數(shù)組中搜索之二)

    C++實(shí)現(xiàn)LeetCode(81.在旋轉(zhuǎn)有序數(shù)組中搜索之二)

    這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(81.在旋轉(zhuǎn)有序數(shù)組中搜索之二),本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • C++中指針和引用的區(qū)別分析

    C++中指針和引用的區(qū)別分析

    這篇文章主要介紹了C++中指針和引用的區(qū)別,有需要的朋友可以參考一下
    2014-01-01
  • C++實(shí)現(xiàn)查詢本機(jī)信息的示例代碼

    C++實(shí)現(xiàn)查詢本機(jī)信息的示例代碼

    這篇文章主要為大家詳細(xì)介紹了如何利用C++實(shí)現(xiàn)查詢本機(jī)信息,并且進(jìn)行上報(bào),文中的示例代碼講解詳細(xì),具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-05-05

最新評(píng)論