VSCode - 调试 C++ 时无法将输入输入控制台
VSCode - cannot enter input into console while debugging C++
我知道这个问题以前被问过很多次,但是 none 的解决方案对我有用。
我正在尝试调试 Visual Studio 上的单个 C++ 文件 Windows 上的代码。 运行 并且调试工作正常。但是,当我尝试调试要求用户输入的程序(例如使用 cin
或 scanf()
)时,进程启动并挂起。该程序正在等待我输入内容,但是集成终端不让我输入任何内容。
一种可能是运行在外部终端调试,但是外部终端的问题是它在程序完成后立即关闭,所以我看不到结果。
launch.json 中是否有选项或扩展可以帮助解决我的问题?
这是我的 launch.json 文件:
"name": "g++.exe - Générer et déboguer le fichier actif",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "C:\MinGW\bin\gdb.exe",
"setupCommands": [
{
"description": "Activer l'impression en mode Pretty pour gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "C/C++: g++.exe build active file"
重新安装 MinGW 似乎已经解决了我的问题。我使用了 SourceForge 页面上的安装程序。
我不知道最初的问题是什么,但现在可以在调试模式下输入终端。我怀疑问题出在我的 gdb 安装上。
我知道这个问题以前被问过很多次,但是 none 的解决方案对我有用。
我正在尝试调试 Visual Studio 上的单个 C++ 文件 Windows 上的代码。 运行 并且调试工作正常。但是,当我尝试调试要求用户输入的程序(例如使用 cin
或 scanf()
)时,进程启动并挂起。该程序正在等待我输入内容,但是集成终端不让我输入任何内容。
一种可能是运行在外部终端调试,但是外部终端的问题是它在程序完成后立即关闭,所以我看不到结果。
launch.json 中是否有选项或扩展可以帮助解决我的问题?
这是我的 launch.json 文件:
"name": "g++.exe - Générer et déboguer le fichier actif",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "C:\MinGW\bin\gdb.exe",
"setupCommands": [
{
"description": "Activer l'impression en mode Pretty pour gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "C/C++: g++.exe build active file"
重新安装 MinGW 似乎已经解决了我的问题。我使用了 SourceForge 页面上的安装程序。
我不知道最初的问题是什么,但现在可以在调试模式下输入终端。我怀疑问题出在我的 gdb 安装上。