1.cin
- 用法:接收一个字符或字符串
- 遇空格、TAB、回车即停
- 示例代码:
#include<iostream>
using namespace std;
int main(){
int a;
cin>>a;
cout<<a;
return 0;
}
输入:123 142 输出:123
#include<iostream>
using namespace std;
int main(){
string a;
cin>>a;
cout<<a;
return 0;
}
输入:abc def 输出:abc
2.cin.get()
- 用法:cin.get(字符变量名)接收字符;
cin.get(字符数组名,接收字符数目)用来接收一行字符串,可以接收空格
- 示例代码:
#include<iostream>
using namespace std;
int main(){
char ch;
ch=cin.get();//或者cin.get(ch)
cout<<ch;
return 0;
}
输入:abcd 输出:a
#include<iostream>
using namespace std;
int main(){
char ch[20];
cin.get(ch,20);
cout<<ch;
return 0;
}
输入:abc def 输出:abc def
输入:abcdeabcdeabcdeabcdeabcde(25个字符) 输出:abcdeabcdeabcdeabcd(19个字符+1个‘\0')
3.cin.getline()
- 语法:cin.getline(字符指针(char*),字符个数N(int),结束符(char)),当结束符省略时,默认为'\0'
- 用法:接受一个字符串,可以接收空格并输出。输入过程中达到N个数或者提前遇到结束符时,输入结束
示例代码:
#include<iostream>
using namespace std;
int main(){
char ch[20];
cin.getline(ch,5);
cout<<ch;
return 0;
}
输入:abcdef 输出:abcd
#include<iostream>
using namespace std;
int main(){
char ch[20],b;
cin.getline(ch,5,'b');
cout<<ch;
return 0;
}
输入:abcdef 输出:a
4.getline()
- 头文件:#include<string>
- 用法:可以接收空格并输出,和cin.getline()类似,但cin.getline()属于istream流,getline()属于string流
- getline(cin,s)获取一行字符串。
它不同于cin>>s,遇空格则停
#include<iostream>
#include<string>
using namespace std;
int main(){
string s;
getline(cin,s);
cout<<s;
return 0;
}
输入:abc def 输出:abc def
如果只是cin>>s,会输出abc(遇空格则停)
暂时总结了这么多,欢迎补充学习……