上一篇文章我介紹VS Code 的簡單配置,這篇來點認(rèn)真的。
作為一個編輯器,我們當(dāng)然是要拿來寫代碼了,VS Code支持很多語言文件的編輯的同時,也能通過一些簡單的配置,使它支持簡單的語言調(diào)試。As follows.
C/C++
首先我們需要安裝下面這款專門針對C/C++環(huán)境的擴展。

這個擴展比較大,下載會有段時間,請耐心等待...

關(guān)于調(diào)試的提示
想要對一個項目/文件進行調(diào)試,必須用VS Code 打開項目文件夾,或者叫打開包含項目的文件夾,只有在文件夾中才能使用調(diào)試功能,也就是說,不能打開一個源代碼文件開始調(diào)試。
如果你要調(diào)試一個代碼文件,請把這個文件放到一個文件夾里,用VS Code的打開文件夾功能加載項目進行調(diào)試。
用打開文件夾功能打開以后,會在項目文件夾下多出一個.vscode文件夾,里面會包含一些對這個項目的配置文件。
項目文件夾
打開以后大約是這個樣子
VS Code資源管理器
好了,要調(diào)試的話編譯器是肯定少不了的,目前Windows下只支持Cygwin和MinGW,這里我們用MinGW 從這里下載安裝器 http://www.mingw.org/,點進去右上角有個Download Installer,就是他。打開安裝。

選擇一個安裝目錄后繼續(xù)即可,由于眾所周知的原因,可能會遇到一點問題,相信你能解決。

進入安裝管理器,在All Packages-MinGW-MinGW Base System下面找到
mingw32-gcc和mingw32-gcc-g++右鍵 mark for installation,選上這兩項,有依賴項目也會自動標(biāo)記。
然后為了能夠調(diào)試我們需要標(biāo)記
mingw32-gdb
然后在這里確認(rèn)選擇,下載。為了能順利完成安裝,請保證自己的網(wǎng)絡(luò)條件良好。

下載完成后,把你的MinGW\bin目錄追加到系統(tǒng)PATH環(huán)境變量下,我的路徑是C:\MinGW\bin。
確保能在命令行下輸入gcc回車能有輸出。

完成之后重新打開項目文件夾,編寫代碼進行測試。選擇調(diào)試選項。

選擇GDB作為調(diào)試環(huán)境。

然后會出現(xiàn)一個配置文件。

將內(nèi)容替換為如下代碼,保存。
{
"version": "0.2.0",
"configurations": [
{
"name": "C++ Launch (GDB)", // 配置名稱,將會在啟動配置的下拉菜單中顯示
"type": "cppdbg", // 配置類型,這里只能為cppdbg
"request": "launch", // 請求配置類型,可以為launch(啟動)或attach(附加)
"targetArchitecture": "x86", // 生成目標(biāo)架構(gòu),一般為x86或x64,可以為x86, arm, arm64, mips, x64, amd64, x86_64
"program": "${file}.exe", // 將要進行調(diào)試的程序的路徑
"miDebuggerPath":"c:\\MinGW\\bin\\gdb.exe", // miDebugger的路徑,注意這里要與MinGw的路徑對應(yīng)
"args": [], // 程序調(diào)試時傳遞給程序的命令行參數(shù),一般設(shè)為空即可
"stopAtEntry": false, // 設(shè)為true時程序?qū)和T诔绦蛉肟谔帲话阍O(shè)置為false
"cwd": "${workspaceRoot}", // 調(diào)試程序時的工作目錄,一般為${workspaceRoot}即代碼所在目錄
"externalConsole": true, // 調(diào)試時是否顯示控制臺窗口,一般設(shè)置為true顯示控制臺
"preLaunchTask": "g++" // 調(diào)試會話開始前執(zhí)行的任務(wù),一般為編譯程序,c++為g++, c為gcc
}
]
}
注意
miDebugger的路徑,注意這里要與MinGw的路徑對應(yīng)
切換到我們的代碼文件,按F5進入調(diào)試,選擇配置任務(wù)運行程序。

這里隨便選擇一個任務(wù),我選了最后一個。

然后會出現(xiàn)一個
task.json配置文件,同樣地,將內(nèi)容替換為如下代碼
{
"version": "0.1.0",
"command": "g++",
"args": ["-g","${file}","-o","${file}.exe"], // gcc編譯命令參數(shù)
"problemMatcher": {
"owner": "cpp",
"fileLocation": ["relative", "${workspaceRoot}"],
"pattern": {
"regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
"file": 1,
"line": 2,
"column": 3,
"severity": 4,
"message": 5
}
}
}
完成之后,保存?;氐酱a文件,按F5,如果你的代碼沒有問題的話,出現(xiàn)黑框框就完成啦。
具體的調(diào)試可以在代碼里設(shè)置斷點,進行單步調(diào)試,類似下面。

python
第一步當(dāng)然是去https://www.python.org/下載了,安裝時注意勾選添加的PATH環(huán)境變量。
在VS Code里安裝Python的插件

新建一個py文件,寫一點測試代碼,按F5

然后又會出來一個配置文件,其實只要保存一下這個配置文件,回到代碼文件,再按F5就能直接調(diào)試了。
如果你需要直接運行,那么只要按ctrl+shift+B,然后出來一個tasks.json文件,把里面的內(nèi)容替換為如下代碼
{
"version": "0.1.0",
"command": "python",
"isShellCommand": true,
"args": ["${file}"],
"showOutput": "always"
}
我們再來研究一下launch.json這個配置文件,這個json文件的配置其實是調(diào)試的不同選項,默認(rèn)我們選的是Python,但是這個調(diào)試選項有一個缺點,如果你的程序里用到了輸入,那么你會發(fā)現(xiàn)你沒有地方輸入。只有在控制臺中才能輸入,這個時候我們就要用到調(diào)試選項中的External Terminal/Console這個選項了,直接選這個選項調(diào)試你會發(fā)現(xiàn)出現(xiàn)錯誤????

我們需要研究一下這個配置文件,由于里面代碼太多,我只列出了兩項,大家對比一下。
{
"version": "0.2.0",
"configurations": [
{
"name": "Python",
"type": "python",
"request": "launch",
"stopOnEntry": true,
"pythonPath": "${config.python.pythonPath}",
"program": "${file}",
"cwd": "${workspaceRoot}",
"debugOptions": [
"WaitOnAbnormalExit",
"WaitOnNormalExit",
"RedirectOutput"
]
},
{
"name": "External Terminal/Console",
"type": "python",
"request": "launch",
"stopOnEntry": true,
"pythonPath": "${config.python.pythonPath}",
"program": "${file}",
"cwd": "${workspaceRoot}",//注意這里,默認(rèn)是null所以不能調(diào)試,改成${workspaceRoot}當(dāng)前工作目錄
"console": "externalTerminal",
"debugOptions": [
"WaitOnAbnormalExit",
"WaitOnNormalExit"
]
}
]
}
別的調(diào)試選項大家也可以試試看。
.Net Core
如果你安裝了.Net Core的話,你就已經(jīng)有了C#的編譯器了。還沒有裝的話可以在https://www.microsoft.com/net/core#windowsvs2015下載
還要在VS Code中編寫調(diào)試C#代碼首先還是安裝一個C#的插件。

重新打開以后需要一段時間下載調(diào)試器,耐心等待,保持網(wǎng)絡(luò)良好。
兩布完成以后,你可是試著打開命令行,輸入
dotnet,如果有輸出說明安裝成功。新建一個目錄,輸入
dotnet new 新建一個.net core 項目,輸入dotnet restore還原一些可能的引用和依賴后,執(zhí)行dotnet run運行項目,可以看到默認(rèn)項目hello world的輸出。我們用VS Code打開剛才新建的項目,會出現(xiàn)提示

點擊Yes,自動為我們配置好tasks.json和launch.json文件,再次回到代碼文件,F(xiàn)5直接運行,可以看到輸出。
另外,VS Code 可以內(nèi)聯(lián)命令提示符,快捷鍵是Ctrl+.就和Windows的控制臺是一樣的,還長的好看一點,可以直接在里面操作,對.net core項目的retore就不用再開一個控制臺了。

