使用命令行参数在c ++中模拟标准用户输入

时间:2014-09-23 19:33:27

标签: c++ visual-studio debugging

假设我有以下C ++代码

#include <iostream>
int main()
{
   int x,y;
   std::cout << "Please enter the first input." << std::endl;
   std::cin>>x;
   std::cout << "Please enter the second input." << std::endl;
   std::cin>>y;
   std::cout<<x/y<<std::endl;
   return 0;
}

我可以使用cl/EHsc sample.cpp

从命令行编译文件

我想要做的是用命令行给出的输入显示程序的输出。我怎么能这样做?

x应该从第一个命令行参数

获取它的值

y应该从第二个命令行参数中获取它的值。

以下应该可以工作,但我想避免摆弄Visual Studio Properties等。

Piping input into a c++ program to debug in Visual Studio

编辑:另外为了进一步澄清,我想将它用作自动系统,它从命令行接收输入,我不想修改原始代码

1 个答案:

答案 0 :(得分:0)

&#34;管道输入的接受答案&#34;您链接的问题也适用于您的问题。如果使用命令行窗口来执行此操作,则不必使用Visual Studio属性。只需打开命令提示符并键入它:

cd c:\path\to\project\debug
sample.exe < my_input.txt

编辑:WhozCraig的建议也有效:

cd c:\path\to\project\debug
echo 6 2 | sample.exe