这是我到目前为止所尝试的。我很确定freopen会以某种方式陷入循环中。谢谢你先进的帮助!抱歉,如果我搞砸了格式化。一旦使用cin,它就不允许进一步输入,只打印5次相同的if语句。
#include <iostream>
using namespace std;
#include <string>
int main(){
string x;
string z;
int y;
string t;
for(int i=0; i<6; i++){
cout<<"name"<<endl;
cin>>x;
cout<<"Pokemon name capatalized"<<endl;
cin>>z;
cout<<"Pokedex number"<<endl;
cin>>y;
cout<<"type"<<endl;
cin>>t;
freopen( "file.txt", "a", stdout );
cout<<"else if(pokename==\""<<x<<"\" || pokename==\""<<z<<"\" || p=="<<y<<")""{cout<<\"This is "<<z<<", \"; "<<t<<"();}"<<endl;
}
return 0;
}
答案 0 :(得分:1)
如果您希望写入文件,可以使用ofstream
类来执行此操作:
以下是可用于写入文件的代码段:
#include<fstream>
#include<string>
using namespace std;
int main() {
string file = "myfile.txt";
ofstream out(file.c_str());
string output = "writting...";
out << output;
out.close();
}
让我解释一下这段代码的作用:
ofstream out statement
声明类型为ofstream
的对象。
构造函数将c_style
字符串作为参数,因此方法c_str()
用于将字符串类转换为c_style
字符串。然后,使用<<
运算符和ofstream
对象out
我正在写入文件。