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()
可以無限讀取,以回車結(jié)束讀取,C語言中的函數(shù),在C++中運行會產(chǎn)生bug。
如:
#include <iostream> #include <cstdio> using namespace std; int main() { chara[50]; cin>>a; gets(a); cout<<a<<endl; return0; }
輸入:I love China回車結(jié)束輸入,輸出結(jié)果為love China。首字符自動丟棄。
3. getline()
若定義變量為string類型,則要考慮getline()函數(shù)。用法如下:
#include <iostream> #include <string> using namespace std; int main() { stringa; getline(cin,a); cout<<a<<endl; return0; }
輸入:I love China回車并未結(jié)束輸入,需回車兩次才能結(jié)束輸入,輸出結(jié)果為:I love China.
4.cin.get cin.getline
cin.get()函數(shù)可以接收空格,遇回車結(jié)束輸入。
#include <iostream> using namespace std; int main() { chara[50]; cin.get(a,50); cout<<a<<endl; return0; }
輸入:I love China回車結(jié)束輸入,輸出結(jié)果為I love China。
5. cin.getline
cin.getline()函數(shù)可以同cin.get()函數(shù)類似,也可接收空格,遇回車結(jié)束輸入。
#include <iostream> using namespace std; int main() { chara[50]; cin.getline(a,50); cout<<a<<endl; return0; }
輸入:I love China回車結(jié)束輸入,輸出結(jié)果為I love China。
以上這篇C++讀取帶空格字符串的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
c++創(chuàng)建二維動態(tài)數(shù)組與內(nèi)存釋放問題
這篇文章主要介紹了c++創(chuàng)建二維動態(tài)數(shù)組與內(nèi)存釋放問題,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2018-06-06C++實現(xiàn)LeetCode(37.求解數(shù)獨)
這篇文章主要介紹了C++實現(xiàn)LeetCode(37.求解數(shù)獨),本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下2021-07-07C++編程使用findfirst和findnext查找及遍歷文件實現(xiàn)示例
這篇文章主要為大家介紹了C++編程如何使用findfirst和findnext查找及遍歷文件實現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-10-10