小編給大家分享一下vscode調試c程序失敗怎么辦,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
創新互聯公司堅持“要么做到,要么別承諾”的工作理念,服務領域包括:成都網站設計、網站制作、外貿營銷網站建設、企業官網、英文網站、手機端網站、網站推廣等服務,滿足客戶于互聯網時代的昌邑網站設計、移動媒體設計的需求,幫助企業找到有效的互聯網解決方案。努力成為您成熟可靠的網絡建設合作伙伴!問題:
執行調試時,出現問題:
無法在".vscode"文件夾(Cannot read property 'name' of undefined) 內創建"launch.json"文件
解決方法:
一、創建文件夾
點擊下圖中紅框處,創建文件夾,命名為“.vscode"

二、創建launch.json
在.vscode文件夾中,創建launch.json文件,并將下面的代碼復制進去,其中,miDubuggerPath后的路徑為C++編輯器的安裝路徑
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) Launch", // 配置名稱,將會在啟動配置的下拉菜單中顯示
            "type": "cppdbg", // 配置類型,cppdbg對應cpptools提供的調試功能;可以認為此處只能是cppdbg
            "request": "launch", // 請求配置類型,可以為launch(啟動)或attach(附加)
            "program": "${fileDirname}/${fileBasenameNoExtension}.exe", // 將要進行調試的程序的路徑
            "args": [], // 程序調試時傳遞給程序的命令行參數,一般設為空即可
            "stopAtEntry": false, // 設為true時程序將暫停在程序入口處,相當于在main上打斷點
            "cwd": "${workspaceFolder}", // 調試程序時的工作目錄,此為工作區文件夾;改成${fileDirname}可變為文件所在目錄
            "environment": [], // 環境變量
            "externalConsole": false, // 為true時使用單獨的cmd窗口,與其它IDE一致;18年10月后設為false可調用VSC內置終端
            "internalConsoleOptions": "neverOpen", // 如果不設為neverOpen,調試時會跳到“調試控制臺”選項卡,你應該不需要對gdb手動輸命令吧?
            "MIMode": "gdb", // 指定連接的調試器,可以為gdb或lldb。但我沒試過lldb
            "miDebuggerPath": "D:\\mingw64\\bin\\gdb.exe", // 調試器路徑,Windows下后綴不能省略,Linux下則不要
            "setupCommands": [
                { // 模板自帶,好像可以更好地顯示STL容器的內容,具體作用自行Google
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": false
                }
            ],
            "preLaunchTask": "Compile" // 調試會話開始前執行的任務,一般為編譯程序。與tasks.json的label相對應
        }
    ]
}三、創建tasks.json
在.vscode文件中,新建tasks.json文件,編輯代碼
{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "Compile", // 任務名稱,與launch.json的preLaunchTask相對應
            "command": "g++", // 要使用的編譯器,C++用clang++;如果編譯失敗,改成gcc或g++試試,還有問題那就是你自己的代碼有錯誤
            "args": [
                "${file}",
                "-o", // 指定輸出文件名,不加該參數則默認輸出a.exe,Linux下默認a.out
                "${fileDirname}/${fileBasenameNoExtension}.exe",
                "-g", // 生成和調試有關的信息
                "-Wall", // 開啟額外警告
                "-static-libgcc", // 靜態鏈接libgcc,一般都會加上
                "-std=c++11", // C++新標準為c++17,或根據自己的需要進行修改
            ], // 編譯命令參數
            "type": "process", // process是vsc把預定義變量和轉義解析后直接全部傳給command;shell相當于先打開shell再輸入命令,所以args還會經過shell再解析一遍
            "group": {
                "kind": "build",
                "isDefault": true // 不為true時ctrl shift B就要手動選擇了
            },
            "presentation": {
                "echo": true,
                "reveal": "always", // 執行任務時是否跳轉到終端面板,可以為always,silent,never。具體參見VSC的文檔
                "focus": false, // 設為true后可以使執行task時焦點聚集在終端,但對編譯C/C++來說,設為true沒有意義
                "panel": "shared" // 不同的文件的編譯信息共享一個終端面板
            },
            // "problemMatcher":"$gcc" // 此選項可以捕捉編譯時終端里的報錯信息;本文用的是clang,開了可能會出現雙重報錯信息;只用cpptools可以考慮啟用
        }
    ]
}四、此時點擊調試按鈕,可以看到出現可以進行調試的選項

看完了這篇文章,相信你對“vscode調試c程序失敗怎么辦”有了一定的了解,如果想了解更多相關知識,歡迎關注創新互聯行業資訊頻道,感謝各位的閱讀!
                分享標題:vscode調試c程序失敗怎么辦-創新互聯
                
                網站路徑:http://www.yijiale78.com/article32/cspgpc.html
            
成都網站建設公司_創新互聯,為您提供面包屑導航、網站策劃、品牌網站建設、做網站、網站設計、自適應網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯