Visual Studio Code:从用户那里获取输入

新手上路,请多包涵

目前,我正在尝试在 Visual Studio 代码中编写 C/C++ 程序。为此,我安装了两个扩展: C/C++C++ Intellisense

根据文档,调试工具不适用于 Windows。我已经能够通过以下任务构建和运行代码:

 {
    "version": "0.1.0",
    "command": "cmd",
    "isShellCommand": true,
    "args": [
        "/C"
    ],
    "tasks": [
        {
            "taskName": "Makefile",
            "suppressTaskName": true,
            // Make this the default build command.
            "isBuildCommand": true,
            // Show the output window only if unrecognized errors occur.
            "showOutput": "always",
            // No args
            "args": [
                "C:/Programs/cygwin/bin/make.exe",
                "all"
            ],
            // Use the standard less compilation problem matcher.
            "problemMatcher": {
                "owner": "cpp",
                "fileLocation": [
                    "relative",
                    "${workspaceRoot}"
                ],
                "pattern": {
                    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                    "file": 1,
                    "line": 2,
                    "column": 3,
                    "severity": 4,
                    "message": 5
                }
            }
        },
        {
            "taskName": "Run",
            "suppressTaskName": true,
            "isTestCommand": true,
            "args": [
                "helloworld"
            ]
        }
    ]
}

和一个简单的 Makefile

 all: clean helloworld

helloworld: helloworld.cpp
    C:/Programs/cygwin/bin/g++ helloworld.cpp -o helloworld

clean:
    C:/Programs/cygwin/bin/rm -rf helloworld

但是,当程序在运行时需要一些用户输入时,问题就出现了。假设对于这个非常熟悉的 helloworld 程序。

 # include <iostream>

using namespace std;

int main ()
{
  int name;

  cin >> name;

  cout << "Hello, " << name << "!!!" << endl;

  return 0;
}

你能帮我在运行时获取用户输入吗?有一种解决方法可以将输入作为命令行参数传递。但是,对于具有复杂流程的程序来说,这是不可能的。

原文由 Arnab Das 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 420
1 个回答

转到“设置”,然后搜索“代码运行器:在终端中运行”并检查它。这就是我修复它的方式。

原文由 Nafis Ahmad 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题