当前位置: 首页 > news >正文

vscode debug c++代码

需要提前写好CMakeLists.txt
在tasks.json中写好编译的步骤,即tasks,如cmake … 和make -j
在lauch.json中配置可执行文件的路径和需要执行tasks中的哪一个任务

具体步骤:
1.写好c++代码和CMakeLists.txt
2.配置tasks.json
终端–>配置任务–>g++生成活动文件
在这里插入图片描述
此时会在.vscode中生成tasks.json文件
需要修改tasks.json文件。一般的编译步骤就是cmake … 和make -j,对应的就是tasks.json中的两个任务。

{"version": "2.0.0","tasks": [{"type": "shell",    // cmake属于shell命令"label": "cmake",   // 这条任务的名字"command": "cmake", // 对应的shell命令"args": [".."             // cmake命令对应的参数,一般就是..],"options": {"cwd": "${workspaceFolder}/build"  // 需要在哪个路径下执行这条任务}},{"type": "shell",  // make也属于shell命令"label": "make",  // 这条任务的名字"command": "make", // 对应的shell命令"args": ["-j"            // make命令对应的参数,一般就是-j],"options": {"cwd": "${workspaceFolder}/build"  // 需要在哪个路径下执行这条任务},"dependsOn": ["cmake"                      // make命令需要在cmake执行完成后执行,这个cmake就是上面那条任务的名字]},]
}

3.配置lanuch.json
运行–>添加配置–>C++
在这里插入图片描述
此时会生成launch.json文件
再执行一次运行–>添加配置
在这里插入图片描述
或者直接粘贴下面的内容

{// 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387"version": "0.2.0","configurations": [{"name": "(gdb) 启动","type": "cppdbg","request": "launch","program": "${workspaceFolder}/build/${fileBasenameNoExtension}",  //编译生成的可执行文件"args": [],"stopAtEntry": false,"cwd": "${workspaceFolder}/build","environment": [],"externalConsole": false,"MIMode": "gdb","setupCommands": [{"description": "为 gdb 启用整齐打印","text": "-enable-pretty-printing","ignoreFailures": true},{"description": "将反汇编风格设置为 Intel","text": "-gdb-set disassembly-flavor intel","ignoreFailures": true}],"preLaunchTask": "make"    // 执行tasks中的哪个任务}]
}

4.debug程序
到指定的main文件按下F5,即可以调试程序

http://www.lryc.cn/news/266624.html

相关文章:

  • HarmonyOS的功能及场景应用
  • 汽车级EEPROM 存储器 M24C64-DRMN3TP/K是电可擦除可编程只读存储器?它的功能特性有哪些?
  • VS Code无法远程ubuntu
  • 大数据开发职业规划
  • XxIJob入门-示例
  • 单挑力扣(LeetCode)SQL题:1549. 每件商品的最新订单(难度:中等)
  • Javacv-利用Netty实现推流直播复用(flv)
  • cfa一级考生复习经验分享系列(十一)
  • Nginx基本配置内容
  • Jenkins安装与设置(插件安装失败,版本问题解决)
  • 精度提升10个点!HD-Painter:无需训练的文本引导高分辨率图像修复方案!
  • javaweb初体验
  • 手写爬虫框架
  • 基于Kettle和帆软Finereport的血缘解析
  • 给qemu虚机更换(Windows PE)光盘
  • python 神经网络归纳
  • Python高级语法与正则表达式
  • 【洛谷算法题】P4414-[COCI2006-2007#2] ABC【入门2分支结构】Java题解
  • Python如何将图片转换成字符
  • 国家开放大学形成性考核 统一资料 参考试题
  • 4.7 【共享源】流的生产者(二)
  • 流量录制回放工具在自动化测试领域应用探索
  • 【高数定积分求解旋转体体积】 —— (上)高等数学|定积分|柱壳法|学习技巧
  • Ubuntu20.04 及深度学习环境anaconda、cuda、cudnn、pytorch、paddle2.3安装记录
  • 场景切割CVPr2022 SceneSegmentation
  • Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
  • [node] Node.js的文件系统
  • 【Linux系统基础】(2)在Linux上部署MySQL、RabbitMQ、ElasticSearch、Zookeeper、Kafka、NoSQL等各类软件
  • CJson 使用 - 解析Object结构
  • MySQL8主主搭建