当前位置:主页 > c/c++教程 > c++ cin输入字符串方式

c++中cin实现输入字符串方式

发布:2023-03-10 09:00:01 59


为找教程的网友们整理了相关的编程文章,网友巴哲圣根据主题投稿了本篇教程内容,涉及到c++、cin、cin输入字符串、c++、cin输入、c++ cin输入字符串方式相关内容,已被933网友关注,如果对知识点想更进一步了解可以在下方电子资料中获取。

c++ cin输入字符串方式

c++ cin如何输入字符串

1、cin

cin会过滤掉不可见字符(如空格、回车、tab等)。

如果不想略过空白字符,可以使用noskipws流控制。

cin>>noskipws>>input[i]

2、cin.get()

cin.get()可以用来接收字符

cin.get(字符数组名,接收字符数目)用来接收一行字符串,可以接收空格。

char a[20];
cin.get(a,20);
cout<

cin.get()默认接收一个字符,以tab键、space键和enter键结束。

3、cin.getline()

接收一个字符串,可以接收空格并输出

cin.getline(m,5)

接收5个字符到m中,其中最后一个为‘\0’,所以只看到4个字符输出。

4、getline()

接收一个字符串,可以接收空格并输出,需包含#include

getline(cin,str);

c++ cin输入 不定长输入

C++ 不定长输入,保存进数组,并打印

#include
#include
using namespace std;
 
int main() {
    vector 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()获取输入一个字符,包含空格或换行等特殊字符,cin自动忽视空格或换行等特殊字符,cin读取一个个数字,cin.get()读取空格...以此交叉读取。

#include
#include
using namespace std;
 
int main() {
    vector 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()读取第一个数字,cin忽视第一个空格读取第二个数字,cin.get()读取第二个空格...以此交叉读取,因此第一个数字1没被cin读取。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持码农之家。


参考资料

相关文章

  • 深入了解C++封闭类的定义与使用

    发布:2023-03-08

    一个类的成员变量如果是另一个类的对象,就称之为“成员对象”。包含成员对象的类叫封闭类(enclosed class)。本文主要和大家聊聊C++封闭类的使用,需要的可以参考一下


  • C++资源管理操作方法详解

    发布:2023-03-02

    系统中的资源,诸如动态申请的内存,文件描述符,数据库连接,网络socket等,在不用的时候,应该及时归还给系统,否则就会造成内存泄露


  • LeetCode题解C++生成每种字符都是奇数个的字符串

    发布:2023-03-03

    这篇文章主要为大家介绍了LeetCode题解C++生成每种字符都是奇数个的字符串示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪


  • C++子类父类成员函数的覆盖和隐藏实例详解

    C++子类父类成员函数的覆盖和隐藏实例详解

    发布:2022-09-12

    给大家整理一篇关于C++的教程,这篇文章主要介绍了C++子类父类成员函数的覆盖和隐藏实例详解的相关资料,需要的朋友可以参考下


  • Inline Hook(ring3)的简单C++实现方法

    发布:2022-09-23

    给大家整理了关于C++的教程,这篇文章主要介绍了Inline Hook(ring3)的简单C++实现方法,需要的朋友可以参考下


  • Java C++题解leetcode1598文件夹操作日志搜集器

    发布:2023-03-02

    这篇文章主要为大家介绍了Java C++题解leetcode1598文件夹操作日志搜集器示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪


  • Java C++题解leetcode1620网络信号最好的坐标

    发布:2023-03-13

    这篇文章主要为大家介绍了Java C++题解leetcode1620网络信号最好的坐标示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪


  • 深入了解C++智能指针的使用

    发布:2023-03-02

    智能指针的本质就是使用一个对象来接管一段开辟的空间,在该对象在销毁的时候,自动调用析构函数来释放这段内存。本文就来和大家详细聊聊智能指针的使用,需要的可以参考一下


网友讨论