C++如何讀取帶空格字符串?這5種方法教會你

關於C++讀取帶空格字符串的方法,你知道哪些呢?ios

1. cin

cin是C++中最經常使用的輸入語句,當遇到空格或者回車鍵即中止面試

如:算法

#include <iostream>函數

#include <string>學習

using namespace std;spa

int main().net

{視頻

   chara[50];blog

   cin>>a;ci

   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++讀取帶空格字符串的方法就是小編分享給你們的所有內容了,但願對你們有所幫助。

原文連接:https://blog.csdn.net/good_luck512233/article/details/52791005

最後,特別推薦一個分享C/C++和算法的優質內容,學習交流,技術探討,面試指導,簡歷修改...還有超多源碼素材等學習資料,零基礎的視頻等着你!

還沒關注的小夥伴,能夠長按關注一下:

相關文章
相關標籤/搜索