vscode c++調試

裝MinGW-w64並設好環境變量c++

打開官方網站json

點擊下面的SourceForge連接windows

拉到最下面,這裏列出的是已經編譯好的MinGW-w64壓縮包,選擇合適的下載解壓就能夠用了。根據大神的文章,若是你像我同樣是Windows 64位系統,推薦選擇最新版本的 x86_64-win32-seh 來下載。函數

下載壓縮文件並解壓到合適的位置,在系統環境變量添加\bin目錄工具

運行CMD或者Windows PowerShell,測試一下是否可用。命令:gcc -v測試

Using built-in specs.

COLLECT_GCC=gcc

COLLECT_LTO_WRAPPER=

原文連接:https://blog.csdn.net/Leo_LiangXuYuan/article/details/86763735網站

 

VS Code 的C/C++ 插件ui

VS Code 的 Code Runner 插件spa

 

第二步,設置C/C++配置(c_cpp_properties.json)

 

據筆者我的經驗,c_cpp_properties.json文件關係到編寫代碼的時候可否自動查找頭文件、可否顯示函數或變量的提示信息和可否實時檢查出代碼的語法錯誤等,這些都須要頭文件和編譯器的支持。在沒有c_cpp_properties.json文件的狀況下,默認會使用Visual Studio的相關配置。若是如今有找不到頭文件的錯誤提示也沒有關係,能夠修改一下配置文件解決。若是沒有錯誤,能夠跳過這一步或一樣修改爲MinGW的相關配置(與生成任務保持一致)。.net

F1 或 Ctrl+Shift+P: 打開命令面板。在命令面板輸入e,選C/C++:Edit configurations…

VS Code 自動生成c_cpp_properties.json配置文件。

"name"是配置名字,會顯示在界面的右下角。這裏能夠是Mac、Linux或Win32,這三個名字可使得在不一樣平臺自動選擇不一樣的配置,也能夠本身隨便寫,我寫了MinGW-w64。

include目錄我添加了MinGW的C++include目錄,筆者發現C++的include目錄就已經包含了C的include目錄,那就不用重複添加C的目錄了。

"defines"是預約義宏,按需修改或者就保持默認好了。

"windowsSdkVersion"也是按需修改或者保持默認好了。

"compilerPath"是編譯器路徑,改爲MinGW的g++.exe的路徑(若是寫C就改爲gcc.exe的路徑)。

"cStandard"和"cppStandard"能夠本身查一下或者保持默認就行了。

「intelliSenseMode」 選gcc-x64

//.vscode\c_cpp_properties.json

{

    "configurations": [

        {

            "name": "MinGW-w64",

            "includePath": [

                "${workspaceFolder}/**",

                "D:\\mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++",

                "D:\\mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32",

                "D:\\mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward",


                "D:\\mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include",

                "D:\\mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed",

                "D:\\mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"

            ],

            "defines": [

                "_DEBUG",

                "UNICODE",

                "_UNICODE"

            ],

            "compilerPath": "D:\\下載\\mingw64\\bin\\g++.exe",

            "cStandard": "c11",

            "cppStandard": "c++17",

            "intelliSenseMode": "clang-x64"

        }

    ],

    "version": 4

}

提示:若是不知道MinGW的include路徑的話,能夠運行CMD,輸入指令得到:
C的include路徑:gcc -v -x c -E -
C++的include路徑:g++ -v -x c++ -E -

 

第四步,調試配置(launch.json)

進入調試模式,添加配置,選擇C++GDB環境,它會自動生成一個launch.json文件。

launch.json須要改的地方很少,其中program和miDebuggerPath是必須更改的。

program表示可執行程序的名字,啓動調試的時候按着這一條信息來找到調試的可執行程序,因此這裏應該跟編譯時候寫的名字保持一致。

miDebuggerPath表示調試工具的路徑,這裏寫MinGW的g++路徑,如/MinGW-w64/bin/g++.exe。

externalConsole表示調試的時候是否彈出控制檯窗口,若是寫false,控制檯窗口出如今 VS Code 界面右下方一小塊區域。

"args"是調試時傳給程序(main函數)的參數,平時保持空便可,須要的時候再改。"stopAtEntry"是否在程序入口處暫停。

"cwd"工做目錄,調試的工做目錄就是可執行程序的目錄吧,保持默認好了。

"MIMode"可選gdb和lldb,這裏選gdb,lldb是蘋果的。

"setupCommands"裏面有開啓pretty-printing的指令,能夠在調試的時候直觀地看到STL的內容(咱們真正想看到的)而不是具體的成員變量(不少多餘的信息)。

改好了差很少是下面這個樣子:

"configurations": [

        {

            "name": "g.exe build and debug active file",

            "type": "cppdbg",

            "request": "launch",

            "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",

            "args": [],

            "stopAtEntry": false,

            "cwd": "${workspaceFolder}",

            "environment": [],

            "externalConsole": false,

            "MIMode": "gdb",

            "miDebuggerPath": "D:\\mingw64\\bin\\g++.exe",

            "setupCommands": [

                {

                    "description": "爲 g++ 啓用整齊打印",

                    "text": "-enable-pretty-printing",

                    "ignoreFailures": true

                }

            ],

            "preLaunchTask": "g++.exe build active file"

        }

    ]

 

新建和打開C

編輯文件

 

Code Runner直接運行不調試:

 

利用Code Runner 自動生成visual studio code的Task,用於編譯

按 F1 彈出下拉框,輸入(有下拉補全的):

>C/C++: build and Debug Active File

而後在彈出的下拉框選擇:

g++.exe build and debug active file

 

關閉vsc,重啓,打開文件夾

 

在文件中,F9設置斷點

調試

一樣

>C/C++: build and Debug Active File

而後在彈出的下拉框選擇:

g++.exe build and debug active file

相關文章
相關標籤/搜索