天天看点

getline gets cin.getline cin.get分析详解

1.cin的输入

char a[10],b[10];
cin>>a>>b;//每个数组以空格或者换行结束输入,只要字符个数不越界,正常输入输出
cout<<a<<" "<<b<<endl;
           

2.getline的输入

string s;
getline(cin,s);//这种形式的,必须是string类型的,char a[10]不能作为参数,输入为一行字符,以换行结束输入。
cout<<s<<endl;
           
string s;
getline(cin,s,'#');//这一段程序与上面唯一的不同是,如果字符串中检查到最后一个参数的字符(实例为#),则立即结束输入。
cout<<s<<endl;
           

3.cin.getline的输入

char a[10];
cin.getline(a,5);//第一个参数只能为数组,并且只记录前n-1个字符,即第二个参数为5的话,输出四个字符,第五个字符为'\0',遇到空格不结束输入,即遇到换行结束。
cout<<a<<endl;
           

4.gets的输入

char a[10];
gets(a);//必须为数组,遇到空格不结束输入,即遇到换行结束输入。
cout<<a<<endl;
           

5.cin.get的输入

char a;
cin.get(a);//只能记录输入的一个字符
cout<<a<<endl;