1.cin.get()
(1)輸入單個字符
char a;
a = cin.get();
cin.get(a);
(2)輸入指定長度的char[]字符串,只能是char[],不能是string
char a[10];
cin.get(a,10);
(3)輸入到arrayname字符數組中,當到達長度size時結束或者遇到字符s時結束,仍然只能是char[],不能是string
char a[10];
char s='_';
cin.get(a,size,s);
2.cin.getline()
cin.getline( a, size )
cin.getline( a, size, s)
兩者和之前的區別在於是否會把分隔符從緩衝區刪除,cin.getline()函數會將分隔符(s或者回車)刪除,cin.get()則不會
3.getline()
接收一個字符串,可以接收空格並輸出,與之前不同的是第一個參數可以是cin(標準輸入),istringstream,stringstream
string str;
getline(cin,str);
getline(cin,str,s);
下面代碼爲翻轉字符串,getline的第一個參數來自於stringstream。
stringstream stream;
string result = "guanhe zhangjiaxin",n,ans;
stream << result;
while(getline(stream,n,' '))
{
reverse(n.begin(), n.end());
ans+=n+' ';
}
cout<<ans;
參考鏈接:
https://blog.csdn.net/qq_29735775/article/details/81165882
https://blog.csdn.net/sunshineacm/article/details/78068987