首頁  >  文章  >  開發工具  >  vscode怎麼配置cpp偵錯環境

vscode怎麼配置cpp偵錯環境

王林
王林原創
2020-02-10 14:14:474197瀏覽

vscode怎麼配置cpp偵錯環境

安裝C/C 外掛程式

開啟外掛程式頁面,搜尋輸入C/C 搜尋C/C 外掛程式。

vscode怎麼配置cpp偵錯環境

安裝該外掛程式後,使用vscode開啟包含cpp檔案的資料夾時,vscode會新增.vscode子資料夾到目錄中。

新增c_cpp_properties.json設定

透過快速鍵⇧⌘P執行C/Cpp: Edit configurations,新增缺少的c_cpp_properties.json檔案。預設的新增的檔案如下:

{
    "configurations": [
        {
            "name": "Mac",
            "includePath": [
                "${workspaceFolder}/**"
            ],
            "defines": [],
            "macFrameworkPath": [
                "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks"
            ],
            "compilerPath": "/usr/bin/clang",
            "cStandard": "c11",
            "cppStandard": "c++17",
            "intelliSenseMode": "clang-x64"
        }
    ],
    "version": 4
}

這個部分沒有做什麼調整。採用的是預設添加的檔案。

新增tasks.json設定檔

透過快速鍵⇧⌘P選擇執行的指令,選擇Task: Configure Task指令,選擇Create tasks.json from templates,選擇Others來建立一個外部指令。根據自己的編譯器更換commnd選項。

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "cpp",
            "type": "shell",
            "command": "g++",
            "args": [
                "-g",
                "${file}",
                "-o",
                "a.out"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}

這裡需要說一點,希望對目前標籤頁的程式碼進行編譯執行,因此args參數中用的是${file}。另外需要說的一點是,如果不指定輸出的編譯文件,會影響除錯。

>> g++ -g question.cpp -o a.out

當然也可以把args中的a.out替換為${file}保持和檔名的對應。

新增launch.json設定檔

在偵錯介面點擊運行,會提示新增launch.json設定檔。其定義了啟動調試檔案的相關屬性。

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(lldb) Launch",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/a.out",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "lldb",
            "preLaunchTask": "cpp"
        }
    ]
}

這裡需要說明的有三個參數:

1、program參數,這裡的檔名要和之前的保持對應,如果前面用的a.out,這裡也應該是a .out。

2、externalConsole參數,懸停在上面會有說道,如果是linux等系統,將其置為false時,將會在vscode集成內輸出打印內容。如果是true的話,會在外部的終端輸出。為了在vscode看輸出,這裡設定其為false.另一個需要留意的是參數externalConsole,懸停在上面會有說道,如果是linux等系統,將其置為false時,將會在vscode集成內輸出打印內容。如果是true的話,會在外部的終端輸出。為了在vscode看輸出,這裡設定其為false。

3、preLaunchTask參數,因為每次偵錯都需要預先對程式碼進行編譯,這裡可以透過preLaunchTask參數指定編譯任務。這裡將其指定為先前的任務: cpp. 即之前task的label中的內容。

相關文章教學推薦:vscode教學

#

以上是vscode怎麼配置cpp偵錯環境的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn