zoukankan      html  css  js  c++  java
  • getline()和get()的使用区别

    一、getline和get()的使用区别:

    首先这两个函数都读取下一行输入,直到到达换行符;但是getline()函数会丢弃换行符,而get()将换行符保留在输入序列中

    二、getline()函数的使用方法:

    getline()函数读取整行,它使用通过回车输入的换行符来确定输入结尾。要调用这种方法,可以使用cin.getline()。该函数有两个参数,第一个参数是用来存储输入行的数组的名称,第二个参数是要读取的字符数。同时getline()成员函数在读取指定数目的字符或遇到换行符时停止读取。

    #include <iostream>
    using namespace std;
    int main()
    {
        const int HH=20;
        char name[HH];
        char dessert[HH];
        
        cout<< "Enter you name:
    ";
        cin.getline(name,HH);
        cout<<"Enter your favorite dessert:
    ";
        cin.getline(dessert,HH);
        cout<<" I have some delicious "<<dessert;
        cout<<" for you, "<< name << ".
    ";
        return 0;
    }

    三、get()函数的使用:它的参数形式和getline()函数一样,不同之处就是它并不再读取并丢弃换行符,而是将他留在输入队列中。由于第一次调用后,换行符将留在输入队列中,因此第二次调用时看到的第一个字符便是换行符,因此get()认为已达到行尾,而没有发现任何可读取的内容。如果不借助帮助,get()将不能跨过换行符,但是可以使用不带任何参数的cin.get()调用可读取下一个字符(即是换行符)

    #include <iostream>
    using namespace std;
    int main()
    {
        const int HH=20;
        char name[HH];
        char dessert[HH];
        
        cout<< "Enter you name:
    ";
        cin.get(name,HH).get();
        cout<<"Enter your favorite dessert:
    ";
        cin.get(dessert,HH).get();
        cout<<" I have some delicious "<<dessert;
        cout<<" for you, "<< name << ".
    ";
        return 0;
    }
  • 相关阅读:
    函数表达式
    BOM
    让超出容器高度的内容滚动显示但不出现滚动条
    插件书写示例
    php中redis的安装
    日常工作bug总结
    pip freeze requirements.txt命令迁移模块
    Django18-中间件和cache实现限制用户访问频率
    Django17-文件上传下载
    Django16-cache缓存
  • 原文地址:https://www.cnblogs.com/1121518wo/p/11228958.html
Copyright © 2011-2022 走看看