vs code進行c/c++開發

 

 vs code是微軟公司開發的跨平臺編輯器,豐富的插件功能能夠知足各類編程語言的編碼,編譯和調試。因爲vs code自己只是一個編輯器,因此你須要準備編譯工具鏈。本文針對的是windows系統,我這裏使用mingw-w64做爲編譯工具鏈。ios

 

1.下載安裝mingw-w64,而且把mingw-w64的bin目錄加入環境變量,安裝mingw-64的教程不少,再也不復述。好比我添加的環境變量是:C:\Program Files\mingw-w64\x86_64-7.3.0\mingw64\binc++

 

2.在微軟的官方網站上下載安裝vs code,目前最新版本是v.1.22.2 (2018/4/21)shell

 

3.打開vs code,在左邊的擴展商店裏面搜索c++,安裝微軟官方的插件,重啓vs code或者點擊旁邊的"從新加載"生效編程

 

4.在磁盤上新建一個文件夾"HelloWorld",vs code打開這個文件夾,新建main.cppjson

#include <iostream>
using namespace std;

int main()
{
    cout << "hello world" << endl;
    for(int i = 0;i < 100;i++)
    {
        cout << i << endl;
    }

    return 0;
}

而後你會發現 #include <iostream> 這一行下面有一條波浪線,提示你沒有找到iostream這個文件,因此不能包含,把鼠標移動到這一行會出現一個黃色的小燈泡,點擊小燈泡Edit includepath settingwindows

定位到win32的位置,編輯includePath,把你的頭文件路徑添加上就能夠了。編程語言

 

若是你不清楚頭文件路徑,可使用命令打印頭文件的路徑:編輯器

gcc -v -E -x c++ -

添加好了後是這樣子的:工具

如今#include <iostream>就可以正常被包含了。佈局

 

5.編譯 :使用快捷鍵ctrl + shift +b編譯main.cpp,因爲是第一次編譯,會提示你配置生成任務:

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "build",
            "type": "shell",
            "command": "g++",
            "args": [
                "-g",    //表示在生成的可執行文件中加入調試信息,若是你要調試程序,-g參數必不可少
                "main.cpp"
            ],
            "presentation": {
                "reveal": "never"
            },
            "problemMatcher": [
                "$gcc"
            ]
        }
    ]
}

再次使用快捷鍵ctrl + shift +b就能夠編譯main.cpp了,編譯完成能夠看到生成了a.exe文件,這是編譯生成的默認文件名稱,想要自定義文件名可使用 -o 參數。

 

6.調試:a.exe文件生成後,點擊左邊的調試按鈕:

顯示沒有配置,點擊能夠添加配置,修改完成後記得保存:

{
    // 使用 IntelliSense 瞭解相關屬性。 
    // 懸停以查看現有屬性的描述。
    // 欲瞭解更多信息,請訪問: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [

        {
            "name": "gdb c++",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/a.exe",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": true,
            "MIMode": "gdb",
            "miDebuggerPath": "C:/Program Files/mingw-w64/x86_64-7.3.0/mingw64/bin/gdb.exe",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ]
        }
    ]
}

 

再次點擊調試按鈕能夠看到程序在我設置斷點的地方停了下來,這樣咱們就能夠調試本身的程序了。佈局的左邊會顯示變量的值,堆棧信息和線程信息。

 

經過上面的配置已經可以知足基本的要求了,可是如今須要先編譯再調試,分兩個步驟比較麻煩,接下來就把編譯調試一鼓作氣。

首先點擊vs code的調試按鈕,再點擊設置按鈕,修改調試的配置文件

 

{
    // 使用 IntelliSense 瞭解相關屬性。 
    // 懸停以查看現有屬性的描述。
    // 欲瞭解更多信息,請訪問: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [

        {
            "name": "gdb c++",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/a.exe",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": true,
            "MIMode": "gdb",
            "miDebuggerPath": "C:/Program Files/mingw-w64/x86_64-7.3.0/mingw64/bin/gdb.exe",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "build"
        }
    ]
}

注意到咱們只添加了如下內容,表示在調試以前啓動任務 "build", 這個任務名字是上面編譯階段新增的任務名稱。兩者必須須要保持一致

, "preLaunchTask": "build"

保存修改後,咱們只須要直接點擊調試按鈕就能夠調試代碼了,由於系統自動爲咱們在調試以前編譯過了。

相關文章
相關標籤/搜索