VS Code中使用C/C++扩展运行CPP文件时cin无法输入的求助
解决VS Code中Code Runner运行C++时
cin无法输入的问题 我之前也碰到过一模一样的问题!核心原因是Code Runner默认会把程序输出打到VS Code的输出面板(就是你说的SALIDA)里,这个面板只能显示内容,不支持交互式输入,所以cin这类需要用户输入的语句就会“卡住”,没法输入数字。而直接在控制台编译运行没问题,是因为控制台本身就是交互式终端,天然支持输入输出交互。
下面是几个亲测有效的解决办法:
方法1:开启Code Runner的终端运行模式
这是最直接的解决方案:
- 打开VS Code设置(快捷键
Ctrl+,Windows/Linux,Cmd+,Mac) - 在搜索框输入
code-runner.runInTerminal,勾选这个选项 - 重启Code Runner或者重新运行你的C++代码,此时程序会在VS Code的集成终端里运行,点击终端就能正常输入数字了
方法2:手动修改Code Runner的终端执行配置
如果方法1没生效,可以手动配置Code Runner的编译运行命令,强制使用交互式终端:
- 打开设置界面后,点击右上角的**打开设置(JSON)**图标(那个大括号样式的按钮)
- 在settings.json中添加或修改以下配置:
"code-runner.runInTerminal": true, "code-runner.terminalExecutorMap": { "cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt" }
这个配置会让Code Runner先切换到代码所在目录,编译生成可执行文件,然后在集成终端里直接运行这个可执行文件,完全模拟控制台的运行环境。
方法3:检查集成终端的默认配置
如果上面两个方法都不行,可能是你的VS Code集成终端本身的配置有问题:
- 在设置里搜索
terminal.integrated.defaultProfile.windows(Windows系统)或者对应的Mac/Linux选项 - 选择Command Prompt或者PowerShell(Windows),或者bash/zsh(Mac/Linux)作为默认终端,避免使用WSL终端(部分情况下WSL终端和Code Runner的交互会有兼容性问题)
按照上面的步骤操作后,cin >> number;这类语句应该就能正常接收输入了!
内容的提问来源于stack exchange,提问作者ProgrammerJr
相关产品推荐
相关产品推荐

