cin:
输入结束条件 :遇到Enter、Space、Tab键。
scanf:
scanf 读取字符串时,当遇到空格、回车和Tab键都会认为输入结束。
gets:
一般只用于读取字符串,gets可以接收空格,遇到回车认为输入结束
getchar:
getchar()是在输入缓冲区顺序读入一个字符(包括空格、回车和Tab);注意,getchar函数只能接受单个字符,输入数字也按字符处理,输入多于一个字符时,只接收第一个字符
getline:
getline利用cin可以从标准输入设备键盘读取一行,不会忽略空格,以回车为结束
如果定义的是字符数组 char c[10],那么读入一行只能用gets(),不能用getline()
如果定义string s;输入不能用gets(),只能用getline();输出不能用printf(),只能用cout
举例:
#include <string>
#include <iostream>
using namespace std;
int main()
{
string str;
getline(cin,str);
cout<<str<<endl;
return 0;
}
#include <string>#include <iostream>using namespace std;int main(){ char s[100]; gets(s); cout << s;}