1. 程式人生 > 程式設計 >Visual Studio Code 配置C、C++環境/編譯並執行的流程分析

Visual Studio Code 配置C、C++環境/編譯並執行的流程分析

總體流程:

下載安裝vscode
安裝cpptools外掛
安裝編譯、除錯環境
修改vscode除錯配置檔案
下載安裝vscode
https://code.visualstudio.com/Download

安裝cpptools外掛

開啟vscode,按ctrl+p開啟快速命令框,輸入以下命令後等待

ext install cpptools

vscode在短暫的聯網查詢後會列出外掛列表,如圖:

這裡寫圖片描述
這裡寫圖片描述

點選箭頭所指處的按鈕安裝外掛,安裝過程可能會有些慢耐心等待
安裝完成後vscode會提示你重啟vscode,此時重啟即可

安裝編譯、除錯環境

(若是電腦上原來裝著codeblocks,Dev C++等可以跳過這步,

直接跳到 【配置系統環境變數path】 這步即可)

目前windows下除錯僅支援 Cygwin 和 MinGW。
這裡使用的是MinGW.
下面是MinGW的安裝配置過程:
http://mingw.org/
進入官網點選右側 Download Installer下載安裝器
開啟安裝器點選install準備安裝:

這裡寫圖片描述

選擇一個安裝目錄,預設為C:\MinGW這裡選擇的是A:\MinGW
點選Continue開始安裝,安裝過程需聯網,若安裝時提示error則需翻牆安裝
安裝過程很快,結束後Continue按鈕恢復為可用狀態,點選完成安裝。

這裡寫圖片描述

開啟MinGW安裝管理器進行進一步配置

這裡寫圖片描述

注意這裡gdb必選,否則無法除錯

這裡寫圖片描述

選中幾個需要的項右鍵Make for Installation進行標記,其中gcc和g++為c和c++編譯器
選擇完全部想要安裝的項後點擊左上角Installation選單下的Apply Changes應用修改,過程需聯網,中間出現error可先繼續,若最後失敗則需翻牆更新,建議翻牆。

【配置系統環境變數path】

然後配置系統環境變數path,這一步為必須
在 我的電腦 上右鍵 屬性:
然後按照下面步驟做即可,注意最後新建的項要與之前MinGW安裝位置相對應

Windows7注意,要加入,不是覆蓋!我第一次不小心把原來路徑覆蓋了。。。(因為win7不像win10那麼明顯是加入。。)

這裡寫圖片描述

再次開啟vscode,注意配置系統環境變數path後重啟一下vscode
注意vscode除錯需要在開啟的資料夾中進行(注意!是用VSC開啟資料夾!!,單獨開啟一個單獨的cpp是沒有下面的幾個配置檔案出現的!!也就是說,這個cpp要在一個資料夾裡!不像DevCpp和C-Free可以直接除錯一個單獨的cpp!!)

開啟資料夾後,新建test.cpp進行輸入程式碼測試:

這裡寫圖片描述

如圖示進入除錯介面選擇C++:

這裡寫圖片描述
這裡寫圖片描述

然後會在工作目錄下的生成一個launch.json的啟動配置檔案:

這裡寫圖片描述

使用下面程式碼替換該檔案:(只是在vsc自己產生的json檔案加了一些行)

launch.json中有很多屬性可以設定,通過智慧提示檢視有那些屬性可以設定,如果要檢視屬性的具體含義,可以把滑鼠懸停在屬性上面,會屬性的使用說明.

 { 
    "version": "0.2.0","configurations": [ 
      { 
        "name": "(gdb) Launch",// 配置名稱,將會在啟動配置的下拉選單中顯示 
        "type": "cppdbg",// 配置型別,這裡只能為cppdbg 
        "request": "launch",// 請求配置型別,可以為launch(啟動)或attach(附加) 
        "program": "${workspaceRoot}/${fileBasenameNoExtension}.exe",// 將要進行除錯的程式的路徑 
        "args": [],// 程式除錯時傳遞給程式的命令列引數,一般設為空即可 
        "stopAtEntry": false,// 設為true時程式將暫停在程式入口處,一般設定為false 
        "cwd": "${workspaceRoot}",// 除錯程式時的工作目錄,一般為${workspaceRoot}即程式碼所在目錄 
        "environment": [],"externalConsole": true,// 除錯時是否顯示控制檯視窗,一般設定為true顯示控制檯 
        "MIMode": "gdb","miDebuggerPath": "C:\\Program Files (x86)\\CodeBlocks\\MinGW\\bin\\gdb.exe",// miDebugger的路徑,注意這裡要與MinGw的路徑對應 
        "preLaunchTask": "g++",// 除錯會話開始前執行的任務,一般為編譯程式,c++為g++,c為gcc 
        "setupCommands": [ 
          {  
            "description": "Enable pretty-printing for gdb","text": "-enable-pretty-printing","ignoreFailures": true 
          } 
        ] 
      } 
    ] 
  }

注意miDebuggerPath要與MinGw的路徑對應

替換後儲存,然後切換至test.cpp,按F5進行除錯,此時會彈出一個資訊框要求你配置任務執行程式,點選它~

這裡寫圖片描述

在這裡隨便選一個或others:

這裡寫圖片描述

然後用下面程式碼替換:

 {
    "version": "0.1.0","command": "g++","args": ["-g","${file}","-o","${fileBasenameNoExtension}.exe"],// 編譯命令引數
    "problemMatcher": {
      "owner": "cpp","fileLocation": ["relative","${workspaceRoot}"],"pattern": {
        "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$","file": 1,"line": 2,"column": 3,"severity": 4,"message": 5
      }
    }
  }

儲存一下,然後切換至test.cpp,再次按F5啟動除錯~

這裡寫圖片描述

配置c_cpp_properties.json
在編輯器中,有小波浪的就是程式碼有問題,看下#include,左邊有個燈泡,點選後跳出配置檔案,修改其中的Win32的”includePath”如下,和上文一樣,根據自己的路徑進行調整即可。經測試,下圖中程式碼的註冊部分仍是必要部分

 {
    "name": "Win32","includePath": [
      "C:/Program Files/MinGW/include/*","C:/Program Files/MinGW/lib/gcc/mingw32/5.3.0/include/*"
      "C:/MinGW/lib/gcc/mingw32/5.3.0/include/c++/*","C:/MinGW/lib/gcc/mingw32/5.3.0/include/c++/mingw32/*","C:/MinGW/lib/gcc/mingw32/5.3.0/include/c++/backward/*"
    ],"browse": {
      "limitSymbolsToIncludedHeaders": true,"databaseFilename": ""
    }
  }

這裡寫圖片描述

一勞永逸:因為VS需要為每一個資料夾做單獨配置,所以建議把.vscode資料夾放到你常用的資料夾的頂層,這樣就不用重複配置了。
不用每個新cpp檔案就要一套配置。這些配置在你配置好的資料夾內的所有子資料夾和檔案都能使用。

這裡寫圖片描述

最後效果:

設定斷點,變數監視,呼叫堆疊的檢視:

這裡寫圖片描述

條件斷點的使用:

這裡寫圖片描述

由於vscode還不支援中文名檔案除錯,因此最好不要使用中文命名檔案

總結

到此這篇關於Visual Studio Code 配置C、C++環境/編譯並執行的流程分析的文章就介紹到這了,更多相關vscode 配置C、C++環境編譯並執行內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!