您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關怎么在C++中讀取帶空格的字符串,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
關于在C++中字符串的輸入整理筆記
1. cin
cin是C++中最常用的輸入語句,當遇到空格或者回車鍵即停止
如:
#include <iostream> #include <string> using namespace std; int main() { chara[50]; cin>>a; cout<<a<<endl; return0; }
輸入:abcd遇回車輸出abcd
缺點:只能輸入沒有空格的字符串,當輸入中含有空格,則只能輸出空格之前的字符
輸入:I love China輸入空格時輸入并未停止,遇回車輸入停止,輸出I,空格后面的均未輸出。
2. gets()
可以無限讀取,以回車結束讀取,C語言中的函數,在C++中運行會產生bug。
如:
#include <iostream> #include <cstdio> using namespace std; int main() { chara[50]; cin>>a; gets(a); cout<<a<<endl; return0; }
輸入:I love China回車結束輸入,輸出結果為love China。首字符自動丟棄。
3. getline()
若定義變量為string類型,則要考慮getline()函數。用法如下:
#include <iostream> #include <string> using namespace std; int main() { stringa; getline(cin,a); cout<<a<<endl; return0; }
輸入:I love China回車并未結束輸入,需回車兩次才能結束輸入,輸出結果為:I love China.
4.cin.get cin.getline
cin.get()函數可以接收空格,遇回車結束輸入。
#include <iostream> using namespace std; int main() { chara[50]; cin.get(a,50); cout<<a<<endl; return0; }
輸入:I love China回車結束輸入,輸出結果為I love China。
5. cin.getline
cin.getline()函數可以同cin.get()函數類似,也可接收空格,遇回車結束輸入。
#include <iostream> using namespace std; int main() { chara[50]; cin.getline(a,50); cout<<a<<endl; return0; }
輸入:I love China回車結束輸入,輸出結果為I love China。
看完上述內容,你們對怎么在C++中讀取帶空格的字符串有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。