• C++输入cin,输出cout,换行endl,getline连续读取字符


    简记:cin=键盘,cout=屏幕。

    >>和<<指向代表数据流动方向。<<是流插入运算符,右操作数(运算符右边的值)会被插入到输出流中。

    首先要包含:#include <iostream> 

    using std::cin;

    using std::cout;

    using std::endl;

    流操作元std::endl输出一个换行符,然后“刷新输出缓冲”。

    而字符串中的 是转义序列,使光标移动到下一行开始处。

    cin>>a;//把键盘的数据放到变量a里。

    cout<<"hello ";//字符串数据流动到屏幕。

    cin只能读入单个单词,其中间不能有空格。

    getline可以读入一条语句,可以包含空格,遇到回车终止。

    string nameOfCouese;

    getline(cin,nameOfCourse);

    函数调用getline();从标准输入流对象cin(即键盘)连续读取字符(包括空格符),直到遇到换行符为止。

    读取的这些字符放入string类型的变量nameOfCourse中并丢弃换行符。

    其中,在键入程序输入过程中按下回车时,会在输入流中插入一个换行符。

    需要注意!使用getline要包含头文件string。

    #include <string>

    using std::string;

    using std::getline;

    getline同样属于命名空间std。


    C++中本质上有两种getline函数,一种在头文件<istream>中,是istream类的成员函数。一种在头文件<string>中,是普通函数。

      1. 在<istream>中的getline函数有两种重载形式:

        istream& getline (char* s, streamsize n );

        istream& getline (char* s, streamsize n, char delim );

        作用是从istream中读取至多n个字符保存在s对应的数组中。即使还没读够n个字符,如果遇到换行符' '(第一种形式)或delim(第二种形式),则读取终止,' '或delim都不会被保存进s对应的数组中。

      2. 在<string>中的getline函数有四种重载形式:

        istream& getline (istream&  is, string& str, char delim);
        istream& getline (istream&& is, string& str, char delim);
        istream& getline (istream&  is, string& str);

        istream& getline (istream&& is, string& str);


        用法和上一种类似,不过要读取的istream是作为参数is传进函数的。读取的字符串保存在string类型的str中。

    【转载自】 

    C++中,getline函数的详解_百度知道 https://zhidao.baidu.com/question/377613227.html


    getline不是C库函数,而是gcc的扩展定义或者C++库函数。它会生成一个包含一串从输入流读入的字符的字符串,直到以下情况发生会导致生成的此字符串结束。

    1)到文件结束,2)遇到函数的定界符,3)输入达到最大限度。

    C 有 fgets(), gets() 函数,gcc编译器扩展定义了getline()函数。

    用于读取一行字符直到换行符,不读取换行符。

    【转载自】

    getline函数_百度百科 https://baike.baidu.com/item/getline%E5%87%BD%E6%95%B0/3932106?fr=aladdin

  • 相关阅读:
    漫谈二分查找Binary Search (转)
    怎样搭建Android开发平台(转)
    vim控,键盘控的福利,在chrome和firefox中用vim
    用dos命令行执行java程序的方法
    简明 Vim 练级攻略(转)
    vim中文手册,gcc中文手册,gdb中文手册打包赠送
    使用Eclipse平台开发Java程序(转)
    使用Eclipse创建一个Android程序方法
    hdu 1024 Max Sum Plus Plus (最大m子段和)(经典DP)(转)
    sql server2008 表分区
  • 原文地址:https://www.cnblogs.com/wxl845235800/p/10530387.html
Copyright © 2020-2023  润新知