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語言聯(lián)合體Union特點(diǎn)及運(yùn)用全面講解教程
這篇文章主要為大家介紹了C語言聯(lián)合體Union特點(diǎn)及運(yùn)用的全面講解教程有需要深度朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2021-10-10
C++11中模板隱式實(shí)例化與顯式實(shí)例化的定義詳解分析
實(shí)例化是為在程序中的函數(shù)模板本身并不會(huì)生成函數(shù)定義,它只是一個(gè)用于生成函數(shù)定義的方案。編譯器使用模板為特定類型生成函數(shù)定義時(shí),得到的是模板實(shí)例。這即是函數(shù)模板的實(shí)例化。而函數(shù)模板實(shí)例化又分為兩種類型:隱式實(shí)例化和顯式實(shí)例化2022-04-04
QT使用udp實(shí)現(xiàn)發(fā)送與接收?qǐng)D片
這篇文章主要為大家詳細(xì)介紹了QT如何使用udp協(xié)議實(shí)現(xiàn)發(fā)送與接收?qǐng)D片功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-12-12
C語言實(shí)現(xiàn)通訊錄的方法(包括靜態(tài)版本和動(dòng)態(tài)版本)
本文給大家分享C語言實(shí)現(xiàn)通訊錄的方法(包括靜態(tài)版本和動(dòng)態(tài)版本),針對(duì)每種方法給大家介紹的非常詳細(xì),需要的朋友參考下吧2021-09-09

