1. 程式人生 > >折騰Vscode寫C++

折騰Vscode寫C++

一直以來都是用Sublime Text3寫C/C++。因為ST配置簡單,輕量。閒來沒事才弄一弄。

1. 新建資料夾C++Code,並且再建立一個bulid資料夾來放要寫的程式碼。

2. 在Vscode裡新建.vscode資料夾,建立上圖的3個檔案(setting不需要) 

2.1 Launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "C++ Launch (GDB)",                 //
配置名稱,將會在啟動配置的下拉選單中顯示 "type": "cppdbg", // 配置型別,這裡只能為cppdbg "request": "launch", // 請求配置型別,可以為launch(啟動)或attach(附加) "targetArchitecture": "x64", // 生成目標架構,一般為x86或x64 "program": "${fileDirname}\\${fileBasenameNoExtension}.exe
", // 重點!將要進行除錯的程式的路徑 "args": [], // 程式除錯時傳遞給程式的命令列引數,一般設為空即可 "stopAtEntry": false, // 設為true時程式將暫停在程式入口處,一般設定為false "cwd": "${workspaceRoot}", // 除錯程式時的工作目錄,一般為${workspaceRoot} "externalConsole
": true, // 除錯時是否顯示控制檯視窗,一般設定為true顯示控制檯 "internalConsoleOptions": "neverOpen", // 如果不設為neverOpen,除錯時會跳到“除錯控制檯”選項卡", "MIMode": "gdb", // 指定連線的偵錯程式 "miDebuggerPath": "C:/Mingw64/bin/gdb.exe", //重點! 偵錯程式路徑 "setupCommands": [ { "description": "Enable pretty-printing for GDB", "text": "-enable-pretty-printing", "ignoreFailures": false } ], "preLaunchTask": "Compile" } ] }

 

 主要改:"program", “miDebuggerPsth”.

2.2  tasks.json

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "Compile",
            "command": "g++",
            "args": [
                "${file}",   //指定編譯原始碼檔案
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe", //重點! 指定輸出檔名,不加該引數則預設輸出a.exe
                "-ggdb3",   // 生成和除錯有關的資訊
                "-Wall",    // 開啟額外警告
                "-static-libgcc",   // 靜態連結
                "-std=c++17",       // 使用c++17標準
                "-finput-charset=UTF-8", //輸入編譯器文字編碼 預設為UTF-8
                "-fexec-charset=GBK",   //輸出exe檔案的編碼
                "-D _USE_MATH_DEFINES"
            ],

            "problemMatcher": {
                "owner": "cpp",
                "fileLocation": [
                    "absolute",
                ],
                "pattern": {
                    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                    "file": 1,
                    "line": 2,
                    "column": 3,
                    "severity": 4,
                    "message": 5
                }
            },

            "type": "shell",
            
            "group": {
                "kind": "build",
                "isDefault": true
            },

            "presentation": {
                "echo": true,
                "reveal": "always", // 在“終端”中顯示編譯資訊的策略,可以為always,silent,never
                 "focus": false,
                 "panel": "shared" // 不同的檔案的編譯資訊共享一個終端面板
            },
        }
    ]
}

 

 

2.3 c_cpp_properties.json

{
    "configurations": [
        {
            "name": "MinGW64",
            "intelliSenseMode": "gcc-x64",
            "compilerPath": "C:/Mingw64/bin/g++.exe", //重點! g++.exe所在路徑
            "includePath": [  //重點!
                "${workspaceFolder}",
                "C:/Mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/**",
                "C:/Mingw64/x86_64-w64-mingw32/include/**"
            ],

            "browse": {
                "path": [
                    "${workspaceFolder}",
                    "C:/Mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/**",
                    "C:/Mingw64/x86_64-w64-mingw32/include/**"
                ]
            },
            "limitSymbolsToIncludedHeaders": true,
            "databaseFilename": "",
            "cStandard": "c11",
            "cppStandard": "c++17"
        }
    ],
    "version": 4
}

 

 

 3.  在build裡隨便寫個程式,按Ctrl+F5編譯執行。

如果不想配置。在弄好MinGW環境變數的情況下,直接在Vscode裡搜尋 C/C++ Compile Run 外掛,

寫完程式碼後直接按F6編譯執行。