zoukankan      html  css  js  c++  java
  • c++的输入流基础知识

    cin是istream类的对象,它从标准输入设备获取数据,程序中的变量通过流提取符“>>”从流中提取数据。从流中提取数据时通常跳过输入流中的空白符

     
    只有在输入完数据并按回车后,该行数据才被送入缓冲区形成输入流,提取符才能提取数据
     
    除了直接使用cin>>提取数据外,还可以用istream类的成员函数(注意cin是Istream的对象,所以它也有这些函数)完成字符的输入
     
    • get,读入一个字符
      • 不带参数的调用:cin.get()
        • 返回读入的值,若遇到文件结束符,则返回EOF
        • 与C语言的getchar()功能相同
      • 带一个参数的调用:cin.get(ch)。提取一个字符,并赋值给ch变量
        • 若读取成功则返回true,反之(遇文件结束符)返回false
      • 带参数的调用:cin.get(字符数组,字符个数n,终止字符)
        • 读取n-1个字符到字符数组,然后填入 ,如果在此前遇到终止字符,则提前结束
        • 如果读取成功则返回true,反之(遇文件结束符)返回false
    • getline,读入一行字符,用法与带参数的get方法类似
      • cin.getline(字符数组,字符个数n,终止字符)
     
    区别:cin.getline和getline
    • getline
    在<string>中,原型是:
    istream& getline(istream &is , string& str , char delim);
    返回的istream对象即为传入的is,所以下面的调用是合法的:
    delim默认为' ',遇到delim时,delim被抛弃,下次读取时从delim的下一个字符开始
  • 相关阅读:
    SSH公/私秘钥的生成及使用
    使用docker-compose部署Kafka集群
    使用docker或者docker-compose部署Zookeeper集群
    zookeeper相关概念
    redis相关概念
    mq-rabbitmq
    mysql事务隔离级别
    新自动化测试框架+微信机器人构建思路
    当eclipse调用tomcat的时候发生了什么?
    .net 获取配置项
  • 原文地址:https://www.cnblogs.com/amghost/p/3572149.html
Copyright © 2011-2022 走看看