1、在VS Code中安裝c語言第三方擴展包
將這兩個擴展包安裝完成
2、下載MinGW,請下載64位的下載x86_64.seh版本,直接下載.exe文件很可能由於網絡問題無法安裝
地址(失效百度找資源):https://www.lanzoui.com/ivp6higf27i
密碼:3wxa
3、直接解壓到自己喜歡的文件夾,並且配置環境變量
3.1、在系統環境變量path中加上解壓后到bin的路徑(例如:D:\apply-install\WinGW\mingw64\bin)
3.2、在系統環境變量INCLUDE中加上解壓后到include的路徑(例如:D:\apply-install\WinGW\mingw64\include),首先檢查自己的系統環境變量里有沒有INCLUDE,如果沒有就新建一個,然后把mingw的include路徑加進去
3.3、驗證環境變量是否配置成功,在控制台輸入gcc -v
4、創建放置c語言程序的目錄,在目錄中創建.vscode文件夾,並創建名為launch.json、setting.json、tasks.json的文件
4.1launch.json配置如下
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch", // 配置名稱,將會在啟動配置的下拉菜單中顯示
"type": "cppdbg", // 配置類型,這里只能為cppdbg
"request": "launch", // 請求配置類型,可以為launch(啟動)或attach(附加)
"program": "${workspaceFolder}/${fileBasenameNoExtension}.exe",// 將要進行調試的程序的路徑
"args": [], // 程序調試時傳遞給程序的命令行參數,一般設為空即可
"stopAtEntry": false, // 設為true時程序將暫停在程序入口處,一般設置為false
"cwd": "${workspaceFolder}", // 調試程序時的工作目錄,一般為${workspaceFolder}即代碼所在目錄
"environment": [],
"externalConsole": true, // 調試時是否顯示控制台窗口,一般設置為true顯示控制台
"MIMode": "gdb",
"miDebuggerPath": "D:\\apply-install\\WinGW\\mingw64\bin\\gdb.exe", // miDebugger的路徑,注意這里要與MinGw的路徑對應
"preLaunchTask": "gcc", // 調試會話開始前執行的任務,一般為編譯程序,c++為g++, c為gcc
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}
miDebuggerPath修改為MinGw的安裝目錄下的bin目錄下的gdb.exe文件路徑
4.2setting.json配置如下
{
"files.associations": {
"tidl_alg_int.h": "c",
"limits": "c"
}
}
4.3tasks.json配置如下
{
// 有關 tasks.json 格式的參考文檔:https://go.microsoft.com/fwlink/?LinkId=733558 。
"version": "2.0.0",
"tasks": [{
"label": "gcc",
"type": "shell", // { shell | process }
// 適用於 Windows 的配置:
"windows": {
"command": "gcc",
"args": [
"-g",
"\"${file}\"",
"-o",
"\"${fileDirname}\\${fileBasenameNoExtension}.exe\""
// 設置編譯后的可執行文件的字符集為 GB2312:
// "-fexec-charset", "GB2312"
// 直接設置命令行字符集為 utf-8:
// chcp 65001
]
},
// 定義此任務屬於的執行組:
"group": {
"kind": "build", // { build | test }
"isDefault": true // { true | false }
},
// 定義如何在用戶界面中處理任務輸出:
"presentation": {
// 控制是否顯示運行此任務的面板。默認值為 "always":
// - always: 總是在此任務執行時顯示終端。
// - never: 不要在此任務執行時顯示終端。
// - silent: 僅在任務沒有關聯問題匹配程序且在執行時發生錯誤時顯示終端
"reveal": "silent",
// 控制面板是否獲取焦點。默認值為 "false":
"focus": false,
// 控制是否將執行的命令顯示到面板中。默認值為“true”:
"echo": false,
// 控制是否在任務間共享面板。同一個任務使用相同面板還是每次運行時新創建一個面板:
// - shared: 終端被共享,其他任務運行的輸出被添加到同一個終端。
// - dedicated: 執行同一個任務,則使用同一個終端,執行不同任務,則使用不同終端。
// - new: 任務的每次執行都使用一個新的終端。
"panel": "dedicated"
},
// 使用問題匹配器處理任務輸出:
"problemMatcher": {
// 代碼內問題的所有者為 cpp 語言服務。
"owner": "cpp",
// 定義應如何解釋問題面板中報告的文件名
"fileLocation": [
"relative",
"${workspaceFolder}"
],
// 在輸出中匹配問題的實際模式。
"pattern": {
// The regular expression.
"regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
// 第一個匹配組匹配文件的相對文件名:
"file": 1,
// 第二個匹配組匹配問題出現的行:
"line": 2,
// 第三個匹配組匹配問題出現的列:
"column": 3,
// 第四個匹配組匹配問題的嚴重性,如果忽略,所有問題都被捕獲為錯誤:
"severity": 4,
// 第五個匹配組匹配消息:
"message": 5
}
}
}]
}
4.4重啟VS Code將文件夾選擇為放置c語言程序的目錄,並在目錄下編寫測試文件test.c並運行
#include<stdio.h>
int main()
{
printf("hello world!!\n");
return 0;
}