溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

vscode配置編譯運(yùn)行c程序環(huán)境的方法

發(fā)布時間:2021-01-08 11:17:21 來源:億速云 閱讀:327 作者:小新 欄目:軟件技術(shù)

這篇文章主要介紹vscode配置編譯運(yùn)行c程序環(huán)境的方法,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

背景:

1、VS Code只是一個代碼編輯器,編譯、運(yùn)行這些活需要其他程序完成。

2、C/C++ 編譯器的選擇,GCC/G++(MinFGW-w64)

3、MinGW和MinGW-w64是兩個不同的項目。MinGW本身已經(jīng)很久沒有更新了,故不推薦。為了方便,本文中的MinGW指的其實都是MinGW-w64。

4、命令行的使用、系統(tǒng)變量的添加。

安裝vs code

vscode配置編譯運(yùn)行c程序環(huán)境的方法

插件安裝

1、必要插件

C/C++(ms-vscode.cpptools,微軟官方出品):功能最全的C/C++插件,而且是微軟官方的插件,可以放心下載

Code Runner(formulahendry.code-runner):快速編譯運(yùn)行單個文件,方便。

vscode配置編譯運(yùn)行c程序環(huán)境的方法

2、推薦插件

Bracket Pair Colorizer:彩虹括號,匹配的括號會用相同的顏色標(biāo)注出來。

Material Icon Theme:圖標(biāo)包插件,“花里胡哨”,推薦。

One Dark Pro:主題插件,推薦Chinese Language Pack:中文語言包。

配置環(huán)境:

一鍵配置:

win7/10有效:不想折騰的話,下載一鍵配置壓縮包,解壓后,打開vscode_onesrc/,找到start.bat 右鍵->以管理員身份運(yùn)行

vscode配置編譯運(yùn)行c程序環(huán)境的方法

安裝成功,顯示如下:

vscode配置編譯運(yùn)行c程序環(huán)境的方法

手動配置:

配置編譯器:

用VS Code運(yùn)行C/C++前,需要先能夠在命令行編譯C/C++。

這里我們需要用到GCC去編譯。

下載地址:https://sourceforge.net/projects/mingw-w64/

MinGW-W64 GCC-8.1.0

x86_64-win32-seh

i686-win32-dwarf

64位電腦選擇x86_64,32位選擇i686。

下載解壓完成后,添加系統(tǒng)變量 當(dāng)前路徑\mingw64\bin 到path里面。設(shè)置好變量后,重啟電腦。在命令行中輸入gcc 或者g++

如果顯示如下界面:

vscode配置編譯運(yùn)行c程序環(huán)境的方法

配置成功,進(jìn)行下一步。

配置Json:

以下配置文件需要放在.vscode文件夾里面(注意有個點),如果工作目錄為workSpace.需要將.vscode放在workSpace目錄里面。

下面的C:\Users\15591\MyFile\Develop\mingw64\include(一共四個),需要換成你自己的gcc編譯器安裝路徑,如果你的路徑為C:mingw64\你可以換成C:mingw64include

c_cpp_properties.json

{
	"configurations": [{
		"name": "Win32",
		"defines": [
			"_DEBUG",
			"UNICODE",
			"_UNICODE"
		],
		"includePath": [
			"${workspaceFolder}",
			"C:\\Users\\15591\\MyFile\\Develop\\mingw64\\include"
		],
		"browse": {
			"path": [
				"${workspaceFolder}",
				"C:\\Users\\15591\\MyFile\\Develop\\mingw64\\include"
			],
			"limitSymbolsToIncludedHeaders": true,
			"databaseFilename": ""
		},
		"windowsSdkVersion": "10.0.17134.0",
		"compilerPath": "C:\\Users\\15591\\MyFile\\Develop\\mingw64\\bin\\gcc.exe",
		"cStandard": "c11",
		"cppStandard": "c++17"
	}],
	"version": 4
}

launch.json

{
	"version": "0.2.0",
	"configurations": [

		{
			"name": "(gdb) Launch", //配置名稱;在啟動配置下拉菜單中顯示
			"type": "cppdbg",
			"request": "launch",
			"program": "${fileDirname}/${fileBasenameNoExtension}.exe", // 將要進(jìn)行調(diào)試的程序的路徑
			"args": [], //傳入的參數(shù)
			"stopAtEntry": false,
			"cwd": "${workspaceFolder}",
			"environment": [],
			"externalConsole": true,
			"internalConsoleOptions": "neverOpen", 
			// 如果不設(shè)為neverOpen,調(diào)試時會跳到“調(diào)試控制臺”選項卡,你應(yīng)該不需要對gdb手動輸命令吧?
			"MIMode": "gdb",
			"miDebuggerPath": "C:\\Users\\15591\\MyFile\\Develop\\mingw64\\bin\\gdb.exe",
			"setupCommands": [{
				"description": "Enable pretty-printing for gdb",
				"text": "-enable-pretty-printing",
				"ignoreFailures": true
			}],
			"preLaunchTask": "CppCompile" 
			// 調(diào)試會話開始前執(zhí)行的任務(wù),一般為編譯程序。與tasks.json的label相對應(yīng)
		}
	]
}

tasks.json

{
	"version": "2.0.0",
	"tasks": [{
			"label": "CppCompile", 
			// 任務(wù)名稱,與launch.json的preLaunchTask相對應(yīng)            
			"command": "g++", // 要使用的編譯器,我們主要針對cpp文件調(diào)試,亦可以改成其他的            
			"args": [                
			"${file}",                
			"-o", // 指定輸出文件名,不加該參數(shù)則默認(rèn)輸出a.exe,Linux下默認(rèn)a.out                
			"${fileDirname}/${fileBasenameNoExtension}.exe",                
			"-g", // 生成和調(diào)試有關(guān)的信息                
			"-Wall", // 開啟額外警告                
			"-static-libgcc", // 靜態(tài)鏈接                
			"-std=c++17" // C語言最新標(biāo)準(zhǔn)為c11,或根據(jù)自己的需要進(jìn)行修改
		], // 編譯命令參數(shù)            
		"type": "shell", // 可以為shell或process,前者相當(dāng)于先打開shell再輸入命令,后者是直接運(yùn)行命令            
		"group": {                
		"kind": "build",                
		"isDefault": true // 設(shè)為false可做到一個tasks.json配置多個編譯指令,需要自己修改本文件,我這里不多提
	},
	"presentation": {
		"echo": false,
		"reveal": "always", 
		// 在“終端”中顯示編譯信息的策略,可以為always,silent,never。具體參見VSC的文檔                
		"focus": false, // 設(shè)為true后可以使執(zhí)行task時焦點聚集在終端,但對編譯c和c++來說,設(shè)為true沒有意義                
		"panel": "shared" // 不同的文件的編譯信息共享一個終端面板
	},
	"problemMatcher": "$gcc"
}]
}

settings.json

{    
"workbench.colorTheme": "One Dark Pro",//主題One Dark Pro,如不需要刪除本行    
"git.enabled": false,//關(guān)閉git    
"git.ignoreMissingGitWarning": true,//忽略git缺失警告    
"terminal.integrated.rendererType": "dom",    
"breadcrumbs.enabled": true,    
"workbench.iconTheme": "material-icon-theme",//圖標(biāo)主題,如不需要刪除本行    
    "files.defaultLanguage": "cpp", // ctrl+N新建文件后默認(rèn)的語言    
"editor.formatOnType": true, // 輸入時就進(jìn)行格式化,默認(rèn)觸發(fā)字符較少,分號可以觸發(fā)    
"editor.snippetSuggestions": "top", // snippets代碼優(yōu)先顯示補(bǔ)全    
"code-runner.runInTerminal": true, // 設(shè)置成false會在“輸出”面板中輸出,無法輸入,建議設(shè)true    
"code-runner.executorMap": {        
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt.exe -Wall -g -Og -static-libgcc -std=c11 
&& $dir$fileNameWithoutExt",        
"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt.exe -Wall -g -Og -static-libgcc -std=c++17 
&& $dir$fileNameWithoutExt"
    },    
"code-runner.saveFileBeforeRun": true, // run code前保存    
"code-runner.preserveFocus": false, // 若為false,run code后光標(biāo)會聚焦到終端上。如果需要頻繁輸入數(shù)據(jù)可設(shè)為false    
"code-runner.clearPreviousOutput": true, // 每次run code前清空屬于code runner的終端消息    
"code-runner.ignoreSelection": true, 
}

HelloWorld:

file->open folder->vscode_onesrc

找到并打開我們的文件夾vscode_onesrc,打開HelloWorld.c點擊右上角的三角形,編譯運(yùn)行!

Hello World!

vscode配置編譯運(yùn)行c程序環(huán)境的方法

vscode配置編譯運(yùn)行c程序環(huán)境的方法

vscode配置編譯運(yùn)行c程序環(huán)境的方法

以上是“vscode配置編譯運(yùn)行c程序環(huán)境的方法”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI