C++文件输入输出
ACM中巧用文件的輸入輸出來改寫acm程序的輸入輸出
經常有見大神們使用文件來代替ACM程序中的IO,尤其是當程序IO比較復雜時,可以使自己能夠更專注于代碼的測試,而不是怎樣敲輸入。
?
/* *@Author: STZG *@Language: C++ */ #include <bits/stdc++.h> #include<iostream> #include<algorithm> #include<cstdlib> #include<cstring> #include<cstdio> #include<string> #include<vector> #include<bitset> #include<queue> #include<deque> #include<stack> #include<cmath> #include<list> #include<map> #include<set> #define DEBUG #define RI register int using namespace std; typedef long long ll; typedef __int128 lll; const int N=10000; const int MOD=1e9+7; const double PI = acos(-1.0); const double EXP = 1E-8; const int INF = 0x3f3f3f3f; int t,n,m,k,q;int main() { #ifdef DEBUGfreopen("input.in", "r", stdin);//freopen("output.out", "w", stdout); #endifscanf("%d",&n); //cout << "Hello world!" << endl; return 0; }其中關鍵就在于
/* *@Author: STZG *@Language: C++ */ #include <bits/stdc++.h> #define DEBUG using namespace std; int n; int main() { #ifdef DEBUGfreopen("input.in", "r", stdin);//freopen("output.out", "w", stdout); #endifscanf("%d",&n); //cout << "Hello world!" << endl; return 0; }而要取消文件輸入只要
/* *@Author: STZG *@Language: C++ */ #include <bits/stdc++.h> //#define DEBUG using namespace std; int n; int main() { #ifdef DEBUGfreopen("input.in", "r", stdin);//freopen("output.out", "w", stdout); #endifscanf("%d",&n); //cout << "Hello world!" << endl; return 0; }就是注釋掉
//#define DEBUG?然后這個input.in文件一定要放在程序所在目錄下
我用的是CB就是這樣子
如果把輸出打開的話
輸出的output.out文件也會在這個目錄下
?
總結
- 上一篇: A Walk Through the F
- 下一篇: 玩具谜题