ACM Trick点&&常用操作记录(持续更新)(I\O)
2018-03-17 00:09
351 查看
I\O
Fast_In
//从文件读 //注意和ios::sync_with_stdio(false);冲突 typedef long long LL; namespace fastIO { #define BUF_SIZE 100000 //fread -> read bool IOerror = 0; inline char nc() { static char buf[BUF_SIZE], *p1 = buf + BUF_SIZE, *pend = buf + BUF_SIZE; if(p1 == pend) { p1 = buf; pend = buf + fread(buf, 1, BUF_SIZE, stdin); if(pend == p1) { IOerror = 1; return -1; } } return *p1++; } inline bool blank(char ch) { return ch == ' ' || ch == '\n' || ch == '\r' || ch == '\t'; } inline void read(int &x) { char ch; while(blank(ch = nc())); if(IOerror) return; for(x = ch - '0'; (ch = nc()) >= '0' && ch <= '9'; x = x * 10 + ch - '0'); } #undef BUF_SIZE }; using namespace fastIO;
整行字符串的读入
读char[] 使用cin.getline(str,50)其中第一个参数为字符串的地址 第二个参数为长度(直接写maxn)
读string类 使用
getline(cin,s)
两者均支持读EOF
代码如下
读char
#include<bits/stdc++.h> using namespace std; char str[50]; int main() { //freopen("in.txt","r",stdin); while(cin.getline(str,50)){//注意由于用流 当数据很多时较慢 printf("%s\n",str); } return 0; }
读string
#include<bits/stdc++.h> using namespace std; string s; int main() { //freopen("in.txt","r",stdin); while(getline(cin,s)){ cout<<s<<endl; } return 0; }
char[]和string之间的转换
string转char[]#include<bits/stdc++.h> using namespace std; char str[50]; string s; int main() { //string 转 char[] cin>>s; strcpy(str,s.c_str());//速度较快 printf("%s\n",str); return 0; }
char[]转string
#include<bits/stdc++.h> using namespace std; char str[50]; string s; int main() { //char[] 转 string scanf("%s",str); s=str; cout<<s<<endl; return 0; }
统计每行文本单词总个数(流方法)
char[]#include<bits/stdc++.h> #include<sstream> using namespace std; char str[50]; int main() { freopen("in.txt","r",stdin); int cnt=0; while(cin.getline(str,50)){ stringstream ss(str); char tmp[50]; while(ss>>tmp) cnt++; } cout<<cnt<<endl; return 0; }
string
#include<bits/stdc++.h> #include<sstream> using namespace std; string s; int main() { freopen("in.txt","r",stdin); int cnt=0; while(getline(cin,s)){ stringstream ss(s); string tmp; while(ss>>tmp) cnt++; } cout<<cnt<<endl; return 0; }
相关文章推荐
- ACM Trick点&&常用操作记录(持续更新)(敏感空间)
- ACM Trick点&&常用操作记录(持续更新)(语言&&函数)
- Linux常用操作命令记录(持续更新)
- Redis-常用命令记录-持续更新
- QT学习之路————常用控件、常用操作(持续更新中。。。)
- 常用Linux命令记录(持续更新)
- 每天的记录,慢慢来。<十二月> December ··········持续更新中
- ABAP report常用的一些语句用法(包括字符串操作,变量动态操作)(持续更新)
- Linux 常用易忘操作命令整理汇总(持续收集更新...)
- Python常用的一些操作(持续更新中......)
- 高效Excel&VBA操作(持续更新)
- 一些html的缩写对应的意义以及常用单词的意思<新手向><持续更新>
- vim 多文件操作常用命令[持续更新]
- sqlserver常用的一些操作(持续更新)
- linux 常用命令记录 持续更新
- 常用通讯术语记录(持续更新中)
- 【Python】记录四:numpy矩阵操作(持续更新)
- github 常用项目记录帖,持续更新...
- 关于IDEA 的常用操作(持续更新)
- eclipse常用操作(持续更新)