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.后续:

是不是很简单,点个赞吧。

标签: none

添加新评论