歡迎您光臨本站 註冊首頁

VSCode配置C++環境的方法步驟(MSVC)

←手機掃碼閱讀     techdo @ 2020-06-11 , reply:0

 最近心血來潮,想用一下微軟的VSCode寫一下C++,然而第一步就卡住了,竟然不會配置C++環境,陸陸續續搞了兩天,總算是弄明白了,網上msvc教程比較少,就打算分享出來,也記錄下自己的歷程。

 先說說我的理解吧,Visual Studio Code和visual studio不同,後者是屬於IDE是個集成開發環境,下載好基本就能直接用來寫C++等;

 而Visual Studio Code(以下簡稱VSC)是一個編輯器,簡單來說和windows電腦上的那個看.txt文件的記事本一個類別,然而VSC卻是個強大的記事本,你可以用它來做很多記事本做不了的事情,最簡單的來說你打開很大的txt記事本就會特別卡打開很慢,但是VSC不會,你會體驗到他的順滑流暢。

 因為VSC屬於開源跨平臺的一個軟件,因為他的很多設置都是屬於文件類的,需要改代碼才能實現修改一些深度使用的功能,相比於很多圖形界面的軟件設置,VSC對小白並不友好(樓主也是白的不能再白的小白)。

 至於為什麼用msvc沒有使用用戶最多的Mingw-w64來配置,只能說樓主懶得裝吧,個人VS重度使用者,不想再裝Mingw-w64,其次就是裝這個Mingw-w64需要特殊的Internet出國工具安裝也比較慢,小白的我嘗試失敗了很多次之後emmmm放棄了……需要的話網上這個教程超級多的。

 現在步入正題,說說用VSC配置C++開發環境吧。

一、首先安裝軟件VSCode

網址:https://code.visualstudio.com/ 選擇適合自己的版本,自行安裝,要記得安裝路徑(為以後的卸載什麼的留好後門)默認選項即可,也可自己瞎選,如果有問題可自行搜索解決。
 

二、必要插件

VSC安裝完畢,你可能需要安裝一些插件:

[1]中文簡體插件 和 C/C++ 擴展插件

操作如圖,並且,在應用商店裡面搜索 Chinese,選擇如圖安裝重啟即可


 


 

[2]你也可以選擇其他美化或者編程插件:比如 one dark pro 、code runner、vscodeicons等

注:樓主已經安裝了中文插件,因而剛開始界面就是中文,前面不完全一樣截圖就看看參考下就好啦,擴展商店的位置在左側最下面那個圖標點進去,選擇推薦的那一欄然後再搜索你需要的插件,裡面應有盡有。
 另外安裝插件的問題還有漢化的問題,如果出現問題,可以自行搜索解決。

三、安裝Microsoft C ++(MSVC)編譯器工具集

  • 如果已安裝最新版本的Visual Studio,請從Windows“開始”菜單中打開Visual Studio Installer,並驗證是否已選中C ++工作負載。如果未安裝,請選中該框並單擊安裝程序中的“ 修改”按鈕。

  • 或者,通過 https://visualstudio.microsoft.com/downloads/#other單擊“ 下載”頁面上的“Visual Studio構建工具”鏈接下載獨立工具集,然後按照提示進行操作。使用默認設置,下載大小約為1GB,磁盤上的大小約為4GB。

Ps:樓主已有visual studio2019因此沒有再另外安裝。根據微軟官方的文檔安裝即可。不再贅述。

四、開始配置

(一)從Developer Command Prompt啟動VS Code

 1、首先建議在系統盤(通常是C盤)某個文件夾創建一個空的項目文件夾,我們把它命名為“projects”,在這個空的文件夾裡面創建一個名為“helloworld”的子文件夾。如個人的操作結果如圖:
 

(示例是 C:aMyDocumentsprojects 這個路徑 自己定一定要英文的路徑)
 


 

現在我們需要複製下這個文件的路徑(打開helloworld文件夾後,在地址欄複製,個人的示例如圖:)(這樣我複製的地址就是:C:aMyDocumentsprojectshelloworld
 


 

 2、要打開VS的開發人員命令提示符,請在Windows的“開始”菜單中輸入“Developer”,你應會看到它出現在建議列表中。(名稱取決於你安裝的Visual Studio版本)

**請選擇右鍵管理員打開這樣以後會省事不少**


  

3、我們要在開發人員命令提示符下,進入這個名為 “helloworld”的子文件夾,然後用VSC打開這個文件夾,具體操作如下:

打開Visual Studio的開發人員命令提示符後,鍵盤輸入
 Cd+空格+剛才複製的地址+回車 隨後光標會自動跳到下一行,你接著輸入:
 Code+空格+.+回車 然後就自動打開了VSC。

如圖:
 


 

注:
 1、上面命令的加號不需要輸入;
 2、第二個命令最後有一個點,注意是英文的點;
 3英文用的小寫;
 解釋:
 1、上面的cd的意思是 把命令提示符的路徑轉移到之前創建的那個helloworld文件夾;
 2、 第二個命令的意思是 用VSC打開helloworld這個文件夾。

PS:
  以後如果再在別的地方寫C++也需要這麼做,因此你需要記住這個cd命令(還有不知道是不是個別原因我的電腦只能cd到C盤,別的盤不行,所以最好文件放:C盤、自己能記住的、非中文文件夾裡面)
  要在VSC中使用MSVC,必須從Visual Studio的開發人員命令提示符啟動VSC。普通的Windows命令提示符或Bash提示符沒有設置必要的環境變量。(或者有大佬可以教一教怎麼設置嗎)

以後每次啟動都要從這裡進入

(二)寫入C++文件

自動打開的VSC左側如圖:
 點擊helloworld文件夾-->>點擊新建文件-->>輸入 helloworld.cpp(注意後綴.cpp一定要加)-->>隨後在右側打如下C++代碼(也可自行書寫)

  #include#include#includeusing namespace std;  int main()  {   vectormsg {"Hello", "C++", "World", "from", "VS Code!"};   for (const string& word : msg)   {    cout << word << " ";   }   cout << endl;  }

 


 


 

(三)配置編譯器路徑

1、按Ctrl + Shift + P打開命令調面板,並輸入C/C++,並點擊編輯配置”(UI)。如圖:
 


 


 

 然後你會發現helloworld文件夾中出現了新的文件,如圖:
 

圈住的路徑是一個重要的路徑,先知道下,或許一會我們會去找到他

箭頭是新出現的文件夾,點擊打開就會發現一個文件:c_cpp_properties.json,我們點擊打開他查看代碼如圖:
 


 

這個代碼內容每個人的不一樣,尤其是路徑(就右側代碼最長的那一行的路徑);
 這個自動生成的文件不需要修改,

如果第一次配置,為了保險,你可以看看那個路徑文件(就右側代碼最長的那一路徑)下是不是存在那個文件(自己去windows文件夾按照路徑一個一個點開看看有沒有那個叫做cl.exe的文件)

(四)構建任務

接下來,需要創建一個tasks.json文件來告訴VS Code如何構建(編譯)程序。
 (此任務將調用Microsoft C ++編譯器(cl.exe)以基於源代碼創建可執行文件。)
 有兩種辦法:
 先說我自己的辦法:

1、讓helloworld.cpp文件激活(即先點一下這個文件中的代碼)
 2、按Ctrl + Shift + P打開命令調面板,
 3、輸入:tasks點選如圖 默認生成任務
 4、在彈出的界面 再點 c/c++:cl.exe……如圖:


 

5、點擊打開這個tasks.json查看代碼: 別的都不需要修改,只把圖中圈起來的 兩個文件名 修改為對應的即可,如本例的
 "helloworld.exe""helloworld.cpp"

6、在tasks.json文件激活情況下(點擊文件中任意位置表示選中)按快捷鍵ctrl+shift+B,即可生成helloworld.exe等文件(表示成功)

說明:

1、label值將在VS Code Command Palette中使用,可以是您喜歡的任何名稱。
 2、command值表明我們正在使用cl.exeMSVC編譯器。
 3、args數組指定將傳遞給上一步中指定的編譯器的命令行參數。它們必須按編譯器預期的順序出現。
 4、在此示例中,指定了異常處理模式(EHsc)並告訴編譯器生成帶符號(Zi)的調試版本。
 5、/Fe:參數告訴編譯器將可執行文件命名為“helloworld.exe”。

至此構建任務已經完成,如果上面的辦法可行便不必看下面給的官方辦法了,直接跳過看下一步就好
 下面再介紹一下這一步的另外一種來自官方文檔的實現辦法:

同樣按Ctrl + Shift + P打開命令調面板---->>輸入 tasks---->>選擇 Add a default build task---->>再選擇 Others 這樣就創建了一個tasks.json的文件
 用官方給的代碼(如下)替換全部的tasks.json代碼
 ---->>按快捷鍵ctrl+shift+B,即可生成helloworld.exe等文件(表示成功)

  {   "version": "2.0.0",   "tasks": [    {     "label": "msvc build",     "type": "shell",     "command": "cl.exe",     "args": [      "/EHsc",      "/Zi",      "/Fe:",      "helloworld.exe",      "helloworld.cpp"     ],     "group": {      "kind": "build",      "isDefault": true     },     "presentation": {      "reveal":"always"     },     "problemMatcher": "$msCompile"    }   ]  }

 

截圖如下:
 


 


 

(五)配置調試設置

helloworld.cpp文件中,點擊界面上方的

―>>調試
 ―>>添加配置
 ―>>選擇第二個C / C++Windows(Launch)
 ―>>點選cl.exe…
 ―>>將自動創建和打開文件launch.json


 


 

查看launch.json代碼如圖:
 


 

對於launch.json的修改要注意的是

1、橫線的文件名要和前面tasks.json創建的 文件名.exe一致; 樓主這個順序搞出來的這個文件名可以改可以不改,改的話這一行應該為:
 "program": "${workspaceFolder}/helloworld.exe",
 如果手動打全行注意最後一行的逗號(其實只修改後半部分文件名即可)
 2、stopAtEntry值設置為true使調試器在該斷點上停止。最好為true

修改後的如圖:
 

  然後就皆大歡喜了

回到helloworld.cpp文件,
 點擊 調試即可運行,
 結果在:調試控制檯,需要鼠標點選到這個頁面


 

到此為止 你的helloworld算是成功跑出來了。

  VSC的麻煩之處在於以後寫別的c++文件也需要這樣做一遍,你可能覺得很麻煩,其實官方推薦的是每次寫都吧這次配置的.vscode文件夾複製過去,只把task.jsonlaunch.json的文件名那幾行代碼根據新的c++文件名修改一下即可;

  個人覺得按樓主的辦法,每次自己做一遍也不需要費多久時間,很多代碼都是自動生成的沒有複製別人的代碼,還只是修改兩個文件名的那幾行代碼和那個launch中的stopAtEntry值設置為true即可。(比官方多了一個true值,熟練了就好了,畢竟我們不是隨時都能找到之前寫的文件也,還有可能使用別人的電腦)

  另外,調試代碼文件時如果修改了代碼,需要到tasks.json裡面ctrl+shift+B重新生成 name.exe才能顯示更新的代碼結果

  VSC強大在可以配置很多東西,可是就是很麻煩,尤其是對於我們這種小白吧,以後使用VSC的過程中還可能遇到utf-8gbk導致我C++裡面不能輸入漢字字符串結果是亂碼,也沒報錯,我剛遇到,還沒解決……總之大家一起進步啊。

  總體來說相對於Mingw-w64配置msvc的還是比較簡單的,介於網上msvc教程比較少少,這裡就寫了一份自己的方法,有什麼問題希望大家多多指正。

總結:用VSC運行C++的必要順序
 1、你需要C盤創建一個項目文件夾�C>>右鍵管理員從Developer Command Prompt�C>>使用命令cd到創建好的項目裡面去�C>> 使用代碼 code .啟動VS Code
 2、寫一個 name.cpp的文件
 3、配置編譯器路徑c_cpp_properties.json (和IntelliSense設置)
   按Ctrl + Shift + P打開命令調面板,並輸入C/C++,並點擊編輯配置”(UI)
 不需要修改這個文件,生成即可。
 4、構建任務tasks.json (構建說明)

  • 讓helloworld.cpp文件激活(即先點一下這個文件中的代碼)

  • 按Ctrl + Shift + P打開命令調面板,

  • 輸入 tasks點選如圖 默認生成任務

  • 在彈出的界面 再點 c/c++:cl.exe……

  • 修改名稱"helloworld.exe", "helloworld.cpp" 兩處

  • ctrl+shifr+B 生成可執行文件

5、launch.json (調試器設置)

  • 在helloworld.cpp文件中點擊 調試--->>添加配置--->>選擇第二個C / C ++ Windows(Launch)--->>點選cl.exe…--->>將自動創建和打開文件launch.json

  • launch.json的修改要注意的是

    • 橫線的文件名要和前面tasks.json創建的 文件名.exe一致;(可改可不改)

    • stopAtEntry值設置為true使調試器在該斷點上停止。最好為 true (這一點很重要)

6、調試�C>>鼠標點選調試控制檯查看結果即可。

附:如果嫌棄麻煩可以選擇每次都複製helloworld這個文件夾,然後改名稱:

包括 helloworld文件夾的名稱 、helloworld.cpp的名稱,還有tasks和launch裡面的名稱 


[techdo ] VSCode配置C++環境的方法步驟(MSVC)已經有625次圍觀

http://coctec.com/docs/vscode/show-post-237985.html