c++中cin實(shí)現(xiàn)輸入字符串方式
c++ cin如何輸入字符串
1、cin
cin會(huì)過濾掉不可見字符(如空格、回車、tab等)。
如果不想略過空白字符,可以使用noskipws流控制。
cin>>noskipws>>input[i]
2、cin.get()
cin.get()可以用來接收字符
cin.get(字符數(shù)組名,接收字符數(shù)目)用來接收一行字符串,可以接收空格。
char a[20]; cin.get(a,20); cout<<a<<endl;
cin.get()默認(rèn)接收一個(gè)字符,以tab鍵、space鍵和enter鍵結(jié)束。
3、cin.getline()
接收一個(gè)字符串,可以接收空格并輸出
cin.getline(m,5)
接收5個(gè)字符到m中,其中最后一個(gè)為‘\0’,所以只看到4個(gè)字符輸出。
4、getline()
接收一個(gè)字符串,可以接收空格并輸出,需包含#include
getline(cin,str);
c++ cin輸入 不定長輸入
C++ 不定長輸入,保存進(jìn)數(shù)組,并打印
#include<iostream> #include<vector> using namespace std; ? int main() { ?? ?vector<int> arr; ?? ?int i; ?? ?do { ?? ??? ?cin >> i; ?? ??? ?arr.emplace_back(i); ?? ?} while (cin.get() != '\n'); ?? ?for (auto it = arr.begin(); it != arr.end(); it++) { ?? ??? ?cout << *it << " "; ?? ?} ?? ?cout << endl; ?? ?return 0; }
輸出
1 2 3 4 5 6 7
1 2 3 4 5 6 7
cin.get()獲取輸入一個(gè)字符,包含空格或換行等特殊字符,cin自動(dòng)忽視空格或換行等特殊字符,cin讀取一個(gè)個(gè)數(shù)字,cin.get()讀取空格...以此交叉讀取。
#include<iostream> #include<vector> using namespace std; ? int main() { ?? ?vector<int> arr; ?? ?int i; ?? ?while (cin.get() != '\n') { ?? ??? ?cin >> i; ?? ??? ?arr.emplace_back(i); ?? ?}? ?? ?for (auto it = arr.begin(); it != arr.end(); it++) { ?? ??? ?cout << *it << " "; ?? ?} ?? ?cout << endl; ?? ?return 0; }
輸出
1 2 3 4 5 6 7
2 3 4 5 6 7
cin.get()讀取第一個(gè)數(shù)字,cin忽視第一個(gè)空格讀取第二個(gè)數(shù)字,cin.get()讀取第二個(gè)空格...以此交叉讀取,因此第一個(gè)數(shù)字1沒被cin讀取。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
解決C語言中使用scanf連續(xù)輸入兩個(gè)字符類型的問題
這篇文章主要介紹了解決C語言中使用scanf連續(xù)輸入兩個(gè)字符類型的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12C語言實(shí)現(xiàn)十六進(jìn)制與二進(jìn)制的相互轉(zhuǎn)換
這篇文章主要為大家詳細(xì)介紹了如何利用c語言實(shí)現(xiàn)將文件中十六進(jìn)制數(shù)據(jù)與二進(jìn)制數(shù)據(jù)相互轉(zhuǎn)換,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,感興趣的可以學(xué)習(xí)一下2022-11-11VS2019 更新MSDN并創(chuàng)建快捷方式的實(shí)現(xiàn)
這篇文章主要介紹了VS2019 更新MSDN并創(chuàng)建快捷方式的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03Qt5實(shí)現(xiàn)文本編輯器(附詳細(xì)代碼)
QT是一個(gè)跨平臺(tái)的GUI開發(fā)框架,我使用的QT5 C++版本的,本文主要介紹了Qt5實(shí)現(xiàn)文本編輯器,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-07-07