VS code配置C++调试环境,以及遇到一些报错情况,无法调试的解决方法,亲测可用!

网上看了很多调试的配置,比较乱,自己调试成功的两个.json文件的代码整理一下直接给出来,直接复制粘贴,只用改一个地方,下面会说。

文件tasks.json用这段代码替换

{
  "version": "2.0.0",
  "command": "g++",
    "args": ["-g","${file}","-o","${fileBasenameNoExtension}.exe"],
    // 编译命令参数
    "problemMatcher": {
      "owner": "cpp",
      "fileLocation": ["relative", "${workspaceRoot}"],
      "pattern": {
        "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
        "file": 1,
        "line": 2,
        "column": 3,
        "severity": 4,
        "message": 5
        }
      },
     "presentation": {
     "echo": true,
     "reveal": "always",
     "focus": false,
     "panel": "new", //这里shared表示共享,改成new之后每个进程创建新的端口
     "showReuseMessage": true,
     "clear": false
     }
}

文件launch.json用这段代码替换
miDebugger的路径,要与自己的MinGw的gdb.exe路径对应,打开MinGw自己找一下gdb.exe的路径

{
  "version": "2.0.0", 
  "configurations": [ 
   {
      "name": "(gdb) Launch", // 配置名称,将会在启动配置的下拉菜单中显示 
      "type": "cppdbg",       // 配置类型,这里只能为cppdbg 
      "request": "launch",    // 请求配置类型,可以为launch(启动)或attach(附加)
      "program": "${workspaceRoot}/${fileBasenameNoExtension}.exe",// 将要进行调试的程序的路径
      "args": [],  // 程序调试时传递给程序的命令行参数,一般设为空即可  
      "stopAtEntry": false,   // 设为true时程序将暂停在程序入口处,一般设置为false
       "cwd": "${workspaceRoot}", // 调试程序时的工作目录,一般为${workspaceRoot}即代码所在目录 
       "environment": [],  
       "externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台
       "MIMode": "gdb",  
       "miDebuggerPath": "D:\\mingw-w64\\mingw-w64_64bit\\mingw-w64\\x86_64-8.1.0-posix-seh-rt_v6-rev0\\mingw64\\bin\\gdb.exe", 
       // miDebugger的路径,注意这里要与自己的MinGw的路径对应 
       "preLaunchTask": "g++", // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc 
       "setupCommands": [  
        {   
         "description": "Enable pretty-printing for gdb",  
         "text": "-enable-pretty-printing",
         "ignoreFailures": true  
         } 
       ] 
     } 
  ]  
}

F9打断点,F5进入调试
在这里插入图片描述
最后注意一点,调试的xxx.cpp文件名改成英文!!!!!!!
比如:你好.cpp,要改成hi.cpp!!!要不然无法调试!!!!
切记!!!!


2020.6.13更新
在这里插入图片描述
这一堆东西是放在名为vscode(自己取名)的大文件夹里面的,见下图
在这里插入图片描述
调试的文件test.cpp必须放在大文件夹vscode的下一级目录里才可以调试!!!!要不然会报错!!!

如果你放在图中的“案例代码”文件夹里面去调试会报错的!!!

要在Mint上使用VS Code进行C++开发,你需要安装以下组件: 1. VS Code编辑器 2. C++编译器,例如g++ 3. C++调试器,例如GDB或LLDB 以下是配置步骤: 1. 安装VS Code编辑器 你可以从VS Code官方网站下载安装程序。下载完成后,打开安装程序并按照指示进行安装。 2. 安装C++编译器 在Mint上,你可以使用以下命令安装g++编译器: ``` sudo apt-get install g++ ``` 3. 安装C++调试器 在Mint上,你可以使用以下命令安装GDB调试器: ``` sudo apt-get install gdb ``` 或者,你可以使用以下命令安装LLDB调试器: ``` sudo apt-get install lldb ``` 4. 安装C++扩展 打开VS Code,点击左侧的扩展图标,搜索并安装C++扩展。 5. 配置VS Code 为了在VS Code中编写和调试C++代码,你需要在VS Code中创建一个C++项目。打开VS Code,点击“文件”->“新建文件夹”,然后选择一个文件夹作为项目文件夹。 现在,你需要创建一个名为“tasks.json”的文件。这个文件告诉VS Code如何编译和运行你的C++代码。在VS Code中,点击“视图”->“命令面板”->“任务:配置任务”->“创建任务文件”->“其他”,然后在打开的文件中复制以下内容: ``` { "version": "2.0.0", "tasks": [ { "label": "build", "type": "shell", "command": "g++", "args": [ "-g", "${file}", "-o", "${fileDirname}/${fileBasenameNoExtension}" ], "group": { "kind": "build", "isDefault": true } }, { "label": "run", "type": "shell", "command": "./${fileDirname}/${fileBasenameNoExtension}", "group": { "kind": "test", "isDefault": true } } ] } ``` 这个文件包含两个任务:一个用于编译你的代码,另一个用于运行你的代码。 现在,你需要创建一个名为“launch.json”的文件。这个文件告诉VS Code如何调试你的C++代码。在VS Code中,点击“调试”->“配置”->“C++GDB/LLDB)”,然后在打开的文件中复制以下内容: ``` { "version": "0.2.0", "configurations": [ { "name": "C++ Launch (GDB)", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/${fileBasenameNoExtension}", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": false, "MIMode": "gdb", "miDebuggerPath": "/usr/bin/gdb" }, { "name": "C++ Attach (GDB)", "type": "cppdbg", "request": "attach", "program": "${workspaceFolder}/${fileBasenameNoExtension}", "processId": "${command:pickProcess}", "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": false, "MIMode": "gdb", "miDebuggerPath": "/usr/bin/gdb" }, { "name": "C++ Launch (LLDB)", "type": "lldb", "request": "launch", "program": "${workspaceFolder}/${fileBasenameNoExtension}", "args": [], "cwd": "${workspaceFolder}", "environment": [], "externalConsole": false, "MIMode": "lldb", "miDebuggerPath": "/usr/bin/lldb" }, { "name": "C++ Attach (LLDB)", "type": "lldb", "request": "attach", "program": "${workspaceFolder}/${fileBasenameNoExtension}", "processId": "${command:pickProcess}", "cwd": "${workspaceFolder}", "environment": [], "externalConsole": false, "MIMode": "lldb", "miDebuggerPath": "/usr/bin/lldb" } ] } ``` 这个文件包含四个调试配置:两个用于GDB调试器,两个用于LLDB调试器。 现在,你可以打开一个C++文件,按Ctrl + Shift + B来编译你的代码,按F5来启动调试,或者按Shift + F5来附加到一个正在运行的进程。 希望这个教程能够帮助你在Mint上使用VS Code进行C++开发。
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值