【发布时间】:2020-05-18 12:26:15
【问题描述】:
今天我正在尝试从 VS2019 切换到 VS Code,同时继续使用 MSVC。这样我大部分时间都会在一个轻量级和更简单的环境中开发,当我需要高级的东西,比如查看热路径时,我可以打开 VS2019 并完成这项工作。下面是我的launch.json 配置
"name": "debug",
"type": "cppvsdbg",
"request": "launch",
"program": "${workspaceFolder}/build/${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"preLaunchTask": "compile"
问题是在调试std::cout 的输出时,在任何窗口中都看不到。将externalConsole 设置为true 会打开一个新控制台,其中的结果是预期的结果。有没有办法在没有新控制台的情况下查看我的程序的输出?当我前段时间使用 Node 时,我记得 console.log() 在 DEBUG CONSOLE 窗口中可见
编辑 1
我添加了下面 4 个选项卡的屏幕截图以进行澄清。正如你所看到的DEBUG CONSOLE 没有任何结果。最后一张图片是外部控制台。我发现大约 60 秒后,DEBUG CONSOLE 窗口显示正确的内容,然后我猜又冻结了大约 60 秒。程序应该在无限循环中显示行。最后一张截图是在另一个调试会话中截取的,修改了launch.json
编辑 2
以下是 2 个示例。第一个按预期工作。第二个没有。在我的初始程序中,执行了类似于第二个示例的操作
#include <iostream>
using namespace std;
int main() {
std::cout << "Hello world!\n";
}
#include <iostream>
#include <Windows.h>
using namespace std;
int main() {
while(true) {
Sleep(500);
std::cout << "Hello world!\n";
}
}
【问题讨论】:
标签: c++ visual-studio-code configuration std