Linux下C編程的工具集:html
咱們提倡在Linux命令行下學習C程序設計。學習時在Ubuntu Bash中經過Ctrl+Shift+T
快捷鍵打開三個標籤(tab),:linux
咱們可使用ALT+1
,ALT+2
,ALT+3
快速切換,達到使用IDE同樣的感受。web
Ubuntu中可使用sudo apt install vim
安裝Vim。Vim使用參考「作中學之學用學用Vim」編程
GNU CC(簡稱爲gcc)是GNU項目中符合ANSI C標準的編譯系統,可以編譯用C、C++和Object C等語言編寫的程序。gcc又是一個交叉平臺編譯器,它可以在當前CPU平臺上爲多種不一樣體系結構的硬件平臺開發軟件,所以尤爲適合在嵌入式領域的開發編譯。 GCC編譯代碼的過程以下:vim
咱們能夠把編譯過程分紅四步,以編譯hello.c生成可執行文件hello爲例,以下圖:
微信
編譯過程比較難記,咱們簡化一下,前三步,GCC的參數連起來是「ESc」,相應輸入的文件的後綴是「iso」,這樣記憶起來就容易多了。 學習GCC的另一個重點是:參考教材《深刻理解計算機系統》7.6,7.10節,學習靜態庫,動態庫的製做。函數
建議使用CGDB(sudo apt install cgdb安裝),比GDB好用,熟悉VC,CodeBlock等IDE的調試方式的同窗,可使用DDD(sudo apt install ddd 安裝)。工具
注意使用GCC編譯時要加「-g」參數。學習
參考gdb參考卡網站
GDB最基本的命令有:
問題:GDB的n(next)命令讓GDB執行下一行,而後暫停。 s(step)命令的做用與此相似,只是在函數調用時step命令會進入函數,那麼實際使用中應該優先選用哪一個?爲何?
其餘幾個我認爲應該掌握的調試命令有:
歡迎關注「rocedu」微信公衆號(手機上長按二維碼)
作中教,作中學,實踐中共同進步!
版權聲明:自由轉載-非商用-非衍生-保持署名| Creative Commons BY-NC-ND 3.0
若是你以爲本文對你有幫助,請點一下左下角的「好文要頂」和「收藏該文」