關於c++中getline(cin,str)在cin之後使用
{
string str;
int a;
cin>>a;
getline(cin,str);
cout<<endl;
return 0;
}
getline(cin,str)的讀取原理是將以‘/n’為結束符做為一完整讀取的一行,'/n'會讀。所以當之前用cin讀取一個字元的時候,你會輸入一個字元然後點選回車,那麼下面getline(cin,str)讀的時候會讀入這個回車,並判斷結束了。
解決的方法是在getline前面加入cin.ignore().這個就會忽略那個回車。
int main()
{
string str;
int a;
cin>>a;
cin.ignore();
cin.ignore();
cout<<endl;
return 0;
}
相關推薦
關於c++中getline(cin,str)在cin之後使用
int main() { string str; int a; cin>>a; getline(cin,str); cout<<endl;
C++中getline()和cin同時使用時的注意事項
今天在做tju的oj,遇到一個問題,想前部分用cin函式一個一個的讀入資料,中間部分利用getline()一起讀入一行,但是測試發現,cin之後的getline函式並無作用,遂谷歌之。原來cin只是在快取區中,把字元讀走,會剩餘/n在快取區中,但是getline對/n極度敏感
C++中getline等輸入輸出函式的用法
此文轉自 在學習C++的過程中,經常會遇到輸入輸出的問題,以下總結一下下面幾個函式的用法: 1)、cin 2)、cin.get() 3)、cin.getline
C++中getline與C中scanf、gets小結
getline()的原型是istream& getline ( istream &is , string &str , char delim ); 其中 istream
C++中使用cin之後再使用getline出問題的解決辦法!
今天做OJ的時候,發現一個問題,就是我使用cin>>T;之後再使用getline(cin,line);發現程式執行完cin>>T之後就結束了,跳過了getline(cin,line)的執行,單步之後發現line是空值。 cin>>T回車
c++中字符輸入函數getline、cin.getline區分
不能 ng- 設置 alt pos art 結束 out 兩個 1、cin>>s; s能夠是:string s、char s[]; 這個是ostream中的函數。遇到‘ ’(空格) , ‘\n‘(換行),就會自己主動結束,因此假設用cin讀取字符串,那麽這
c++ 中cin get getline等函式的使用規則
在學習C++的過程中,經常會遇到輸入輸出的問題,以下總結一下下面幾個函式的用法: 1)、cin 2)、cin.get() 3)、cin.getline() 4)、getline() 5)、gets() 1、cin>>&nbs
本週學習總結 第十週 C++中cin、cin.get()、cin.getline()、getline()、gets()等函式的用法
先總結幾個string字元陣列常用函式把 需要<string.h>標頭檔案才可以使用: strlen(字元陣列) 、 strcpy(陣列1,陣列2)把2內容複製到1中去 、 strcat(陣列1,陣列2) 將2中內容連到1中去 、 strcmp(陣
C++ 中的 cin/cin.get()/cin.getline()/getline/getchar()
在C++中有關從終端中輸入資料的函式的理解一直比較模糊,寫在這裡面來分享給大家,並且方便自己以後查閱。 我一般在寫C++程式的時候都會在標頭檔案中引入iostream, cstdio, cstring, cmath這幾個檔案,以便方便後面相關庫內函式的應用。下面,將按照順序介紹這些函式。 1. cin
C/C++中gets和cin.getline()效率問題
在做演算法題的時候,很多時間需要用到取一行的資料,在對比了C語言的gets函式與C++ STL庫中的cin.getline()函式之後,發現gets的執行效率更高,造成這一現象的主要原因: 應該是
C++中cin、cin.get()、cin.getline()、getline()、gets()等函式的用法
學C++的時候,這幾個輸入函式弄的有點迷糊;這裡做個小結,為了自己複習,也希望對後來者能有所幫助,如果有差錯的地方還請各位多多指教(本文所有程式均通過VC 6.0執行) 1、cin 2、cin.get() 3、cin.getline() 4、getline() 5、gets() 6、getchar() 附
c++中輸入字串--cin.get和cin.getline用法
c++中cin輸入字串,這個跟java中的scanner物件有點像,今天來說一說cin中get()和getline()用法。首先先說一下兩者的區別: 1、getline()在輸入結束後丟棄換行符,在儲
C++中cin.get(),cin.getline(),cin>>,gets(),cin.clear()使用總結
1.cin.get() 實質:類istream所定義物件cin的過載成員函式 用於讀取單字元 istream& get(char&) int get(void)
c++中字符輸入函數cin.getline在輸入char與string時的不同
style \n span pre des ace pac using reads cin.getline在輸入char時: using namespace std; const int ArSize = 20; char name[ArSize];
C/C++中的結束輸入條件判斷 (scanf、EOF、getchar()、cin.get()、getline)
本教程主要適用於一些程式比賽或大公司機試中的輸入資料的處理,總的來說,可以分為以下三種情況: 情況一:輸入的測試樣例有多組,每組需要相同邏輯的處理; 處理方案:在C語言中可利用scanf("%d",&n)!=EOF,在C++中可以使用while(cin>&g
【C++】while(cin>>str); 和 getline(cin,line,'#');
跳出迴圈:ctrl+z(先按enter鍵後ctrl+z) Ctrl+z並不會產生一個普通的ASCII碼值,也就是說它不會產生一個字元,不會被放到輸入緩衝區中,所以讀不到它,你輸入了就好像木有輸入一樣,它只能作為結束迴圈來用。 還有在Windows系統中,只有
C++中的cin、cin.get()、cin.getline()、getline()、gets()等函式的用法
1、cin 2、cin.get() 3、cin.getline() 4、getline() 5、gets() 6、getchar() 1.cin>> 用法1:最基本,也是最常用的用法,輸入一個數字: #include <iostream>
c++中cin的基本使用方法
取數據 lin nbsp ring abc pop 發現 con hit 一、最主要的使用方法cin>> 接收一個數字、字符、字符串。遇“空格”、“TAB”、“回車”都結束 比如: <span
C++:cin、cin.getline()、getline()的用法
using 輸出 str 用法 border 數組 urn you sdk C++:cin、cin.getline()、getline()的用法 主要內容: 1、cin用法 2、cin.getline()用法 3、getline()用法 3、註意的問題 一、cin&
c++中cin和cout的用法
AR oat size spa span 用法 cout font 標準 cin和cout是c++中的標準輸入輸出流。中 一、cin cin的一般用法: cin>>變量a>>變量b>>變量c; cin會自動辨別變量的類型,如a可以