目前,当我在 Visual Studio Code 中使用 LLDB 调试器启动程序时,由于某种原因,我在 VSCode 的调试控制台中得到了转义的 stdout 输出。例如,我的程序输出以下内容:
Playable cards: s9 s0 s8 s7
Playing: s9
Playable cards: s0 s8 s7
Playing: s0
Playable cards: s8 s7
但是在 VSCode 的调试控制台中我得到了这个:
@"Playable cards: s9 s0 s8 s7 \r\n"
@"Playing: s9\r\n"
@" Playable cards: s0 s8 s7 \r\n"
@" Playing: s0\r\n"
@" Playable cards: s8 s7 \r\n"
为什么格式是这样的?可以修复吗?这是在 OSX 上,使用最新的 VSCode。
我的.vscode/launch.json
样子是这样的:
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "solitaire",
"type": "cppdbg",
"request": "launch",
"preLaunchTask": "build",
"program": "${workspaceFolder}/build/solitaire",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"internalConsoleOptions": "openOnSessionStart",
"MIMode": "lldb"
}
]
}
答案1
您可以通过向 launch.json 添加“externalConsole”:true 来解决此问题,这会将输出发送到单独的终端窗口。