【C/C++进阶】输入的技巧
[by_041]
有集合条件的读入:scanf("%[..]",char*);
char str[1001];
scanf("%[1234567890]",str);
getchar();
scanf("%[^\n]",str);
getchar();
单字符读入:ch=getchar();
int input()
{
char ch;
while((ch=getchar())<'0'||ch>'9');
int ret=ch-'0';
while((ch=getchar())>='0'&&ch<='9')
ret=(ret<<1)+(ret<<3)+ch-'0';
return ret;
}
整行读入:gets(char*);
char str[1001];
gets(str);
整行读入:cin.get(char*,int).get();
char str[1001];
cin.get(str,1001);
getchar();
cin.get(str,1001).get();
有停止条件的读入string:getline(cin,string,'\n');
string str;
getline(cin,str,'\n');
有停止条件的读入char*:cin.getline(char*,int,'\n');
char str[1001];
cin.getline(str,1001,'\n');