編譯
編譯工具
有兩個工具可以選擇,g++或者gcc,二者略微不同,任何一個工具c/c++都可以編譯。(具體更多歷史細節不多講,百度搜索即可得知。)
安裝
如果你開終端輸入g++,顯示“沒有命令”的話,那就需要安裝這個工具
不同linux版本命令也不一樣
sudo apt-get install g++
寫代碼
ok,有工具之後你就可以寫代碼腳本,寫完之後用這個g++編譯即可。至於用什麼工具寫代碼,隨你便了。vim、gedit各種寫文本的都有。經典的還是vim了。
編譯
在你腳本目錄下打開終端,或者是cd到腳本目錄後,
g++ 腳本名字
這樣這個目錄下會多出一個a.out文件。a.out是編譯出的可執行文件,類似於window下的exe。
當然g++還有很多其他參數,可以指定輸出文件名之類的,具體可以詳看其他博客,我這裏只是提綱挈領的說一下流程。
btw,如果編譯有錯誤終端會提示;g++默認不使用c++11,需要加選項。
運行查看結果
直接在上面的終端窗口敲入
./a.out
./表示這個目錄下,a.out指定文件。如果你的out文件不在當前目錄,需要用用其他的相應路徑。
接着終端對輸出的代碼的相應輸出。
調試
ok,說完編譯運行,自然少不了調試。經典的工具是gdb。
其安裝也是一樣,如果終端敲入gdb提示“沒有選項”就安裝gdb。
前言
如果想用gdb調試某程序,你需要在此程序編譯的時候加上-g
選項。否則gdb這個文件的時候會出現
reading symbol from xx no debugging symbol found
使用
終端敲入gdb,即可進入gdb模式。你在哪裏進入的gdb模式,此時gdb就在哪個目錄。
打入file a.out
,指定將要debug的a.out文件(也是用相應的目錄)。btw,gdb調試的是可執行文件,對應上文的例子是a.out文件,不是你的代碼文件。
打入 l
,可查看當前debug文件代碼。
b
,添加斷點,可以用行數做參數,也可以用函數名做參數。例子b 13
或者b funcA
。
r a.out
,程序會運行到第一個斷點處,再打入continue
會繼續到第二個斷點,直到結束。
print
打印變量值和地址,display
也可以用。
q
,退出gdb。
最後
ok,基本操作就這樣,然後有其他更多的操作的,以後多用就熟悉了。
更加詳細的使用推薦這個博客和這個博客和這個博客
另,推薦百度經驗做入門。