问题描述
从零重新安装的VSCode,无设置和其他插件,Win10系统,MinGW g++及gdb在环境变量中,发现VSCode调试C/C++程序时永远启用DEBUG CONSOLE而不是集成终端TERMINAL:
TERMINAL中只有launch.json中提供的参数启动debug的只读内容,无法进行输入输出,而cout输出的内容在DEBUG CONSOLE:
此时尝试在DEBUG CONSOLE中进行输入数值给cin,则提示'Unable to perform this action because the process is running',因为该终端提供的是gdb上调试相关的指令,而不是直接给标准输入流stdin的数据;同时debug进程并没有提供可供数据输入的窗口,除非在launch.json中将"externalConsole"由false改为true,但这样只能打开一个单独的黑窗口,很丑且无法使用VSCode的变量查看等功能:
解决办法:重装MinGW64工具链
问题似乎是由于我先前安装的是MinGW32,所以会默认开启DEBUG CONSOLE?
MinGW(Minimalist GNU for Windows)是一个用于在Windows平台上进行开发的开源工具集,它提供了一组用于构建和运行本地Windows应用程序的开发工具,包括编译器、链接器和其他一些实用工具。MinGW的目标是提供一个简单、轻量级的开发环境,使开发人员能够在Windows上使用GNU工具链进行开发。
划重点:MinGW是GNU的一个工具链,因此当不能在VS Code上解决问题时,问题可能就在MinGW上,也许MinGW32就是没有集成终端的选项吧。
MinGW64安装链接:
MinGW-w64 - for 32 and 64 bit Windows download | SourceForge.net
为方便安装,适应Windows用户习惯,在绿色Donwload按钮下面选择Files选项卡:
往下拉找到x86_64-posix-sjlj,不要选MinGW-W64-install.exe,因为网站问题该发布文件无法完成下载。
把跳出的文件下载下载,安装到指定的目录,推荐为盘符根目录,然后将
该位置+mingw64\\bin
添加到环境变量,重新启动VSCode,如需要则修改tasks.json或launch.json,问题解决:
DEBUG CONSOLE不再作为调试的输入输出终端:
文章来源:https://www.toymoban.com/news/detail-841773.html
可以正常使用调试功能。文章来源地址https://www.toymoban.com/news/detail-841773.html
VSCode相关问题可在评论区提问
到了这里,关于VSCode 默认在DEBUG CONSOLE调试无法输入输出 gdb调试 解决方案 及Windows上C/C++环境配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!