VScode上配置 c語言環(huán)境的圖文教程
成成最近用到C語言了,之前比較喜歡用在vscode上面用python調(diào)試,今天我參考了一些文章,也嘗試了下在vscode上配置c語言的調(diào)試,其中包含一些相關(guān)的基礎(chǔ)知識。
1、在vscode里面下載c/c++官方插件:
2、安裝c/c++編譯器:
在windows上借助MinGW工具安裝,下載地址:[https://sourceforge.net/projects/mingw/ ]
安裝在d:\MinGW 下就好(自己新建一個文件夾),然后打開后這個樣子:
在里面找到mingw32-gcc.bin, mingw32-gcc-g++.bin, 以及mingw32-gdb.bin 第一個是c語言文件的編譯器,第二個是c++的,第三個是用來調(diào)試編譯后文件的。
然后點Installation->Apply all changes.
然后安裝好編譯器,下面設(shè)置環(huán)境變量,讓系統(tǒng)能夠自動找到gcc命令,我的電腦右擊->屬性->高級系統(tǒng)設(shè)置->環(huán)境變量,在系統(tǒng)變量里面找到path,這個path和linux里面那個path是一樣的,命令行界面下系統(tǒng)就根據(jù)這個path變量里面存的路徑,尋找命令。我們把MinGW的二進制可執(zhí)行文件的文件夾添加進去。
這個時候我們打開命令行輸入gcc,應(yīng)該可以看到命令已經(jīng)被識別,會出現(xiàn)參數(shù)不足等錯誤
如果你有一個.c文件,可以在命令行下輸入代碼,對代碼進行編譯:
比如我有一個c文件:
#include <stdio.h> int main() { int n; printf("This is a test file!\r\nInput a number: "); scanf("%d",&n); printf("The number is %d",n); return 0; }
然后在文件所在目錄下的命令行中輸入
gcc -g test.c -o test.exe
gcc 是編譯命令,剛剛我們安裝的,-g參數(shù)是表示編譯時帶上可調(diào)試記號,不然編譯好的東西只能運行不能調(diào)試,-o 是表示指定輸出文件,后面緊跟輸出文件的名字,這一條指令就可以將c文件編譯成一個可執(zhí)行的二進制文件。
然后可以在命令行下運行:
./test.exe
如下圖:
我們用vscode進行自動編譯也是這個原理,其實所有的IDE都是這個原理。
問題:如果沒有配置系統(tǒng)環(huán)境變量會出現(xiàn)什么問題?
3、配置vscode
打開vscode載入剛剛的c文件,網(wǎng)上網(wǎng)友說編譯c文件要打開文件所在的文件夾,我嘗試了下,確實是這樣的。如下圖:
然后點調(diào)試,他會跳出一個launch.json的一個配置文件:
修改這幾個地方就好:
program一項,指明了需要運行的文件,$()的格式是表明這是變量,又vscode自己添加,根據(jù)英文可以知道這個變量的含義,miDebuggerPath是我們安裝gdb的路徑,前面提到過他,是用來調(diào)試的二進制文件(可執(zhí)行二進制文件也叫命令)。preLauchTask是一個重點(敲黑板),我們這個配置的意思是用gdb去調(diào)試 program參數(shù)指定的二進制文件,但如果沒有這個文件怎么辦,結(jié)合之前的例子,我們知道我們可以調(diào)試運行的是gcc編譯生成的二進制test.exe文件,但如果沒有這個二進制文件,我們是不是應(yīng)該先用gcc編譯一個出來?preLaunchTask就是干這個的!
生成tasks.json可以通過,菜單里的任務(wù),然后配置任務(wù),模板然后選other就可以,幾個必須的配置項就像下面:
version不重要,跳過。command和args其實剛好拼成我們前面的命令:
gcc -g xxx.c -o xxx.exe
這就自動會生成我們要的exe文件了。然后我們再結(jié)合前面那個配置文件看一下:
假設(shè)我們編譯test.c文件,則${file}就是test.c,然后先執(zhí)行prelaunchTask,就相當于執(zhí)行了
gcc -g test.c -o test.exe
由此生成了test.exe文件
然后又要用gdb調(diào)試${fileBasenameNoExtension}.exe,剛好就是test.exe,這里的配置和剛剛的輸出文件名要一致,相當于運行了:
gdb test.exe
這樣就啟動調(diào)試了。
最后vscode里調(diào)試如下圖:
總結(jié)
到此這篇關(guān)于配置VScode c語言環(huán)境的圖文教程的文章就介紹到這了,更多相關(guān)配置VScode c語言環(huán)境內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C++中使用function和bind綁定類成員函數(shù)的方法詳解
這篇文章主要介紹了C++中使用function和bind綁定類成員函數(shù)的方法,本文給大家介紹的非常詳細,對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-11C++11中l(wèi)onglong超長整型和nullptr初始化空指針
本文介紹?C++11?標準中新添加的?long?long?超長整型和?nullptr?初始化空指針,在?C++11?標準下,相比?NULL?和?0,使用?nullptr?初始化空指針可以令我們編寫的程序更加健壯,本文結(jié)合示例代碼給大家詳細講解,需要的朋友跟隨小編一起看看吧2022-12-12C語言實現(xiàn)統(tǒng)計字符串單詞數(shù)
這篇文章主要介紹了C語言實現(xiàn)統(tǒng)計字符串單詞數(shù),代碼非常的簡潔,有需要的小伙伴快來參考下。2015-03-03