MacOS中VsCode调试C++时不能正确显示STL容器的值

本文讲述了在VSCode中调试时遇到string变量无法显示的问题,通过安装CodeLLDB插件并调整launch.json配置,解决了程序在执行后不会自动结束的问题,确保了变量值在调试视图中的显示。
摘要由CSDN通过智能技术生成

问题描述

vsocde调试debug时,左边的变量栏中无法显示string变量s的值。在参考此篇文章之后,发现问题依旧无法得到解决。在其基础上,我改进了方法,并成功解决了问题。

在这里插入图片描述


解决步骤:

  1. 安装CodeLLDB插件

【注意】:安装该插件后,和下图做同样的设置更改。否则程序在语句全部执行后不会自动结束,而是会跳转到源文件(类似于汇编语言的界面)。

在这里插入图片描述
2. 配置launch.json文件(重点)

下面是通常版本的(存在问题):

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "调试",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}/${fileBasenameNoExtension}",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": true,
            "MIMode": "lldb",
            "preLaunchTask": "C/C++: clang++ 生成活动文件"
        }
    ]
}

下面是更改后的:

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "调试",
            "type": "lldb",
            "request": "launch",
            "program": "${fileDirname}/${fileBasenameNoExtension}",
            "args": [],
            "stopOnEntry": false,
            "cwd": "${workspaceFolder}",
            "console": "integratedTerminal",  // externalTerminal
            "preLaunchTask": "C/C++: clang++ 生成活动文件"
        }
    ]
}

解决效果:

在这里插入图片描述


【参考文章】
https://blog.csdn.net/junqing_wu/article/details/106315890

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值