1.前言:
文件输入输出是个很有用的东西,有时比赛时要有:要求使用文件输入输出,还有时候……
遇到这种时间限制非常恶心的题目:手动测试会有误差……
文件输入输出是个很好的选择!
2.写法:
C
C语言的写法有点复杂,涉及文件指针,本文不多介绍。下面给出示范写法:
#include <stdio.h>
int main() {
FILE *file = fopen("文件名", "文件模式:r,w");
if(file!=NULL){//若打开失败,file值为NULL
fprintf(file, "整数:%d\n",8/*如同printf*/);
}
fclose(file);//记得关闭
return 0;
}
C++
我们可以将 cin,cout重定向到文件,或者使用:ifstream,ofstream。
其中,ifstream是文件输入,ofstream是文件输出。
我们可以创建文件对象,在使用时就可以像cin,cout一样了(不要忘记关闭文件!!!)。
ifstream in("infile.in");
ofstream out("outfile.out");
int a;
in>>a;
out<<a;
in.colse();
out.close();
或者在创建对象后再打开。
ifstream in;
ofstream out;
in.open("infile.in");
out.open("outfile.out");
int a;
in>>a;
out<<a;
in.colse();
out.close();
3.完整代码:
#include<bits/stdc++.h>
using namespace std;
#define infile test.in
#define outfile test.out
#define cin_cout_f
//#define speedup
#ifdef cin_cout_f
#define cin in
#define cout out
ifstream in("infile");
ofstream out("outfile");
//文件输入输出
#else
#ifdef speedup
void spup(){
ios::sync_with_stdio(false);
cin.tie(0);
}
//cin,cout加速,别用printf&scanf
#endif
#endif
int main(){
int a;
cin>>a;
cout<<a;
}
4.后续:
是不是很简单,点个赞吧。