C++ 输出至标准输入流
比如我现在有一个C++文件"求平方.cpp"/*求平方.cpp*/#include<iostream>intmain(){usingnamespacestd;inti=0...
比如我现在有一个C++文件"求平方.cpp"
/*求平方.cpp*/
#include <iostream>
int main()
{
using namespace std;
int i=0;
cin>>i;
cout<<i<<"的平方是"<<i*i<<endl;
}
并且已经正确编译为"求平方.exe"
我现在想做一个程序
自动打开"求平方.exe"并且自动输入一个值
接下来自动获取"求平方.exe"会输出的值
比如,
自动输入2
接受输出的4
能否做到?
注:不一定要读取输出
也可以让"求平方.exe"自动输出到该文件的输入流
最好是能读取 展开
/*求平方.cpp*/
#include <iostream>
int main()
{
using namespace std;
int i=0;
cin>>i;
cout<<i<<"的平方是"<<i*i<<endl;
}
并且已经正确编译为"求平方.exe"
我现在想做一个程序
自动打开"求平方.exe"并且自动输入一个值
接下来自动获取"求平方.exe"会输出的值
比如,
自动输入2
接受输出的4
能否做到?
注:不一定要读取输出
也可以让"求平方.exe"自动输出到该文件的输入流
最好是能读取 展开
2个回答
展开全部
通常可以使用system函数执行
你可以把输入数据写入到.input文件,调用system函数执行
system("./求平方.exe < .input > .output");
程序输出到了.output文件
这使用了 输入输出重定向到文件 的技术
你可以把输入数据写入到.input文件,调用system函数执行
system("./求平方.exe < .input > .output");
程序输出到了.output文件
这使用了 输入输出重定向到文件 的技术
更多追问追答
追问
可不可以用fstream的类
追答
没有问题。
只需要输出到一个临时文件就可以,用什么方法都行。
不过建议你如果使用fstream,最好调用close()之后再执行其他程序,防止输出还在缓冲区。
用FILE* fopen读写也最好调用fclose()关闭文件后再执行。
总之,建议一定要关闭了文件在调用,以免发生一些奇怪的bug。
当然,调用flush其实也可以。
对于FILE*,"fflush(文件指针)
对于fstream,"文件对象<<flush"
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询