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

VS Code中C++程序的调试(Debug)功能

有一个.vscode文件,存放当前工作区相关配置文件的目录。

launch.json

{"version": "0.2.0","configurations": [{"name": "gcc.exe - 生成和调试活动文件",  // 该调试任务的名字,启动调试时会在待选列表中显示"type": "cppdbg","request": "launch","program": "${fileDirname}\\${fileBasenameNoExtension}.exe","args": [],"stopAtEntry": false,  // 这一项控制是否在入口处暂停,默认false不暂停,改为true暂停"cwd": "${workspaceFolder}","environment": [],"externalConsole": false,  // 这一项控制是否启动外部控制台(独立的黑框)运行程序,默认false表示在集成终端中运行"MIMode": "gdb","miDebuggerPath": "D:\\mingw64\\bin\\gdb.exe",  // 调试器路径,必须与你自己的电脑相符"setupCommands": [{"description": "为 gdb 启用整齐打印","text": "-enable-pretty-printing","ignoreFailures": true}],"preLaunchTask": "C/C++: gcc.exe build active file"  // 调试前的预执行任务,这里的值是tasks.json文件中对应的编译任务,也就是调试前需要先编译}]
}

tasks.json

{"tasks": [{"type": "shell","label": "C/C++: gcc.exe build active file",  // 编译任务的名称,跟上面preLaunchTask的值对应"command": "D:/mingw64/bin/g++.exe",  // 编译器的路径,须跟你自己的电脑相符"args": [  // 编译器执行时的参数,跟手动编译时输入的内容基本一致,主要是多了-g参数,以加入调试信息"-g","${file}","-o","${fileDirname}\\${fileBasenameNoExtension}.exe"],"options": {"cwd": "D:/mingw64/bin"},"problemMatcher": ["$gcc"],"group": {"kind": "build","isDefault": true}}],"version": "2.0.0"
}

编译文件

在cmakelists.txt文件中需要设置编译选项:

set(CMAKE_CXX_FLAGS "${CAMKE_CXX_FLAGS} -std=c++11 -pthread -g")

然后编译文件,按这个按钮,选择要调试的可执行的文件,然后就可以对项目进行调试了。
在这里插入图片描述

相关文章:

VS Code中C++程序的调试(Debug)功能

有一个.vscode文件,存放当前工作区相关配置文件的目录。 launch.json {"version": "0.2.0","configurations": [{"name": "gcc.exe - 生成和调试活动文件", // 该调试任务的名字,启动调试时会在待…...

C#四个字节十六进制与单精度浮点数互转

C#四个字节十六进制与单精度浮点数互转可以使用自带的函数,也可以自己写 实例如下: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace floatDemo {class Program{//首先设置:项目->属性…...

Springloc和aop的基础概念

什么是控制反转和依赖注入? 控制反转(IoC)和依赖注入(DI)是软件开发中常用的编程范式, 它们极大地提高了代码可维护性和可复用性,简化了代码结构。 什么是控制反转(IoC) 控制反转是- - 种编程模式,它将应用程序中的控制权转移到…...

算法练习Day43|● 518. 零钱兑换 II ● 377. 组合总和 Ⅳ

LeetCode:518. 零钱兑换 II 518. 零钱兑换 II - 力扣(LeetCode) 1.思路 求组合数,先遍历物品再遍历背包,dp[]数组累加即可。 2.代码实现 1class Solution {2 public int change(int amount, int[] coins) {34 int[…...

人类:我觉得1+1=956446,你觉得呢?大模型:啊对对对

大模型太「听话」了怎么办? 大型语言模型(LLM)的自然语言理解与生成能力一直备受称赞,特别是 ChatGPT 等对话式语言模型能够与人类流畅、自然地进行多轮对话。然而,最近一篇 Google DeepMind 的论文研究发现 LLM 普遍存…...

Offset Explorer

Offset Explorer 简介下载安装 简介 Offset Explorer(以前称为Kafka Tool)是一个用于管理和使Apache Kafka 集群的GUI应用程序。它提供了一个直观的UI,允许人们快速查看Kafka集群中的对象以及存储在集群主题中的消息。它包含面向开发人员和管…...

查看CentOS版本及系统位数与设置CentOS 7.9 2009 防火墙配置放开端口的命令与过程

一、查看CentOS版本及系统位数 1.1 命令汇总 //1、安装redhat-lsb yum install -y redhat-lsb//2、查看系统版本信息 lsb_release -a //3、查看系统位数 getconf LONG_BIT1.2 截图 二、设置CentOS7.9 2009 防火墙配置放开端口 2.1 命令汇总 //禁止防火墙开机启动。这种方法方…...

前端css高级

day08-CSS高级 目标:掌握定位的作用及特点;掌握 CSS 高级技巧 01-定位 作用:灵活的改变盒子在网页中的位置 实现: 1.定位模式:position 2.边偏移:设置盒子的位置 leftrighttopbottom 相对定位 posit…...

华为OD真题--字符串中最小的整数和--带答案

1. 华为OD机考题 答案 2023华为OD统一考试(AB卷)题库清单-带答案(持续更新) 2023年华为OD真题机考题库大全-带答案(持续更新) 2. 面试题 一手真实java面试题:2023年各大公司java面试真题汇总--…...

9月30日生效:微软官方服务协议更新,防止人工智能进行逆向工程

微软最近更新了其官方服务协议,新规则将于9月30日生效,包括多个新增和变化,具体细节请参考最新的微软服务协议。 微软最新更新涉及使用Bing Chat聊天机器人、Windows Copilot和Microsoft 365 Copilot服务,引起了广泛关注。这次更新…...

HarmonyOS教育类APP项目实战系列课结课考试答案(1-10讲)80分就合格

王丹辉(第一讲):HarmonyOS教育类APP项目实战开课及低代码初体验 结课考试 及格分80/ 满分100 评价 判断题 1. DevEco Studio不能同时支持HarmonyOS和OpenHarmony应用/服务开发 正确(True)错误(False) 回答正确 2. DevEco Studio…...

为什么要学习Oracle技术?

为什么要学习Oracle技术? 众所周知,Oracle占据着企业数据库领域超过48.1%的市场份额,成为高端企业数据库软件的绝对领导者。随着时间的推移,企业数据库的规模不断扩大,富有经验的资深OracleDBA越来越受到企业的欢迎。我们从著名的…...

ffmpeg+intel核显实现硬解码

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、前言二、检查方法1.图形法2.nvidia-smi3.intel-gpu-tools 三、安装使用1.libva-dev2.libva-utils3.编译安装4.测试1.vainfo2.ffmpeg测试解码 总结 前言 之…...

电脑开机出现Boot Device怎么办?

开机出现Boot Device这个问题很常见,有时还会出现No Boot Device的问题,虽然多了一个单词,但意思是相同的,这些问题说明你的系统盘出现了问题,或者是引导出现了问题。这该如何解决呢? 方法1. 检查主板或硬盘…...

面试题. 一次编辑

字符串有三种编辑操作:插入一个英文字符、删除一个英文字符或者替换一个英文字符。 给定两个字符串,编写一个函数判定它们是否只需要一次(或者零次)编辑。 示例 1: 输入: first "pale" second "ple" 输出: True 示例 2: 输入: first &…...

Unity悬浮显示提示内容

在编写unity时,需要实现鼠标在某一个按钮上时,就显示其子物体中对应的下拉菜单,为此编写了一个公共类,对于需要悬浮显示的控件均可挂载此类。代码如下: using UnityEngine; using UnityEngine.EventSystems; using Un…...

变形金刚在图像识别方面比CNN更好吗?

链接到文 — https://arxiv.org/pdf/2010.11929.pdf 一、说明 如今,在自然语言处理(NLP)任务中,转换器已成为goto架构(例如BERT,GPT-3等)。另一方面,变压器在计算机视觉任务中的使用…...

【Javascript】ES6新增之类的认识

在现代编程语言中,类是面向对象编程范式中的核心概念之一。 与函数类似,类本质上是一种特殊的函数,它允许我们将数据和操作封装在一起,以创建具有共同行为和状态的对象。 在类的世界里,我们有类表达式和类声明&#xf…...

C#随机法 双峰函数 求极值 避免落入局部最优解

避免落入局部最优解,只要让步长够长即可。 x1 resultX1 random1.NextDouble()*100; 如果后面不乘以100,则很大概率落入负数的最大值 Random random1 new Random(DateTime.Now.Millisecond);double x1 0, resultX10,max-999999,maxTemp0;for (int i …...

JavaScript高级:常见设计模式

设计模式是在软件开发中重复出现的问题的解决方案,它们是经过验证的、被广泛接受的最佳实践。设计模式可以让我们避免重复造轮子,提高代码质量和可维护性。在本文中,我们将介绍几种常见的设计模式,以及它们的实现和应用。 1. 单例…...

PotPlayer字幕翻译神器:打破语言壁垒,畅享全球影音盛宴

PotPlayer字幕翻译神器:打破语言壁垒,畅享全球影音盛宴 【免费下载链接】PotPlayer_Subtitle_Translate_Baidu PotPlayer 字幕在线翻译插件 - 百度平台 项目地址: https://gitcode.com/gh_mirrors/po/PotPlayer_Subtitle_Translate_Baidu 还在为外…...

SFUD串行Flash通用驱动库原理与嵌入式移植实战

1. SFUD 串行 Flash 通用驱动库深度解析1.1 库定位与工程价值SFUD(Serial Flash Universal Driver)并非一个简单的 SPI Flash 封装层,而是一个面向嵌入式产品全生命周期的底层固件基础设施。其核心价值在于解耦硬件选型与软件实现——当 Winb…...

macos 本地大数据学习集群

github https://github.com/yangyongyongyong/bigdata-platform macos arm...

大模型到底是啥?运维人分钟搞懂(不用数学)匙

1. 流图:数据的河流 如果把传统的堆叠面积图想象成一块块整齐堆叠的积木,那么流图就像一条蜿蜒流淌的河流,河道的宽窄变化自然流畅,波峰波谷过渡平滑。 它特别适合展示多个类别数据随时间的变化趋势,尤其是当你想强调整…...

彻底告别OpenClaw使用焦虑:我给他装上了“透视眼”和“批量克隆模组贾

指令替换 项目需求:将加法指令替换为减法 项目目录如下 /MyProject ├── CMakeLists.txt # CMake 配置文件 ├── build/ #构建目录 │ └── test.c #测试编译代码 └── mypass2.cpp # pass 项目代码 一,测试代码示例 test.c // test.c #includ…...

tinyCore:轻量级多核任务分发框架

1. tinyCore 库概述:面向多核嵌入式系统的轻量级任务分发框架tinyCore 是一个专为资源受限型多核微控制器设计的轻量级运行时抽象库,其核心目标并非实现完整的实时操作系统(RTOS)功能,而是提供一种语义清晰、配置极简、…...

WiflyInterface嵌入式Wi-Fi驱动开发与工程实践指南

1. WiflyInterface 库深度解析:面向嵌入式硬件工程师的 WiFly 模块驱动开发指南WiflyInterface 是一个专为嵌入式平台设计的 WiFly(Roving Networks RN-131/RN-171 系列)Wi-Fi 模块通信接口库。该库最初由 ARM mbed 官方团队开发,…...

达梦数据库安全加固避坑指南:那些等保评测中容易忽略的配置细节(DM8实测)

达梦数据库安全加固实战:等保评测中的高阶配置陷阱与优化策略 在数据库安全领域,达梦数据库作为国产化替代的重要选择,其安全配置的严谨性直接关系到等保评测的成败。许多中高级运维人员虽然熟悉基础安全设置,却常常在等保测评的关…...

考研复习Day 9 | 计网:运输层(下)

一:TCP可靠传输的实现 1.1 以字节为单位的滑动窗口 核心概念:滑动窗口是以字节为单位的,每个字节都有序号。 发送窗口的结构: 区域说明发送窗口后沿之前已发送且已收到确认发送窗口内允许发送的序号发送窗口前沿之后不允许发送 …...

保姆级教程:用PM2-Windows-Service将Node应用变成系统服务(含淘宝镜像加速)

保姆级教程:用PM2-Windows-Service将Node应用变成系统服务(含淘宝镜像加速) 在Windows服务器上部署Node.js应用时,最令人头疼的问题莫过于会话注销后应用进程自动终止。想象一下,你精心开发的在线商城后台服务&#x…...