博客
关于我
cin与cout详解
阅读量:484 次
发布时间:2019-03-07

本文共 1449 字,大约阅读时间需要 4 分钟。

std::cout详解

// std::cout是C++标准库中的一个概念类,用于向标准输出流写入数据。在C++中,标准输出流默认为键盘的显示终端。你可以直接使用cout来输出各种数据类型的内容。    // 例如:    std::cout << "hello world" << std::endl;    // 如果你希望直接使用cout和cin,可以在顶部文件中加入以下行:    using namespace std;    // std::前缀表示标准库命名空间, ::是作用域运算符,用于指定作用域。    // cout是一个内置的对象,用于表示标准输出流。你可以通过<
<运算符将内容写入cout对象中。 std::endl是一个常量,表示以字符串结尾的换行符。它是一个模板函数,用于强制更新输出缓冲区。 当你调用std::endl时,系统会立即将输出缓冲区的内容写到屏幕上,而不是等到缓冲区被填满后才会自动刷新。 因此,你需要清楚了解std::endl的作用机制:

std::endl的工作原理
  • 调用std::endl会向输出缓冲区添加内容并执行缓冲区刷新操作。
  • 系统会在以下情况下刷新缓冲区:
    • 缓冲区满了
    • 程序执行到main函数的return语句
    • 主动调用std::endl
// 当缓冲区被刷新时,内容会被输出到屏幕上。系统通常会在有可读事件(例如키盘输入)时检查输出缓冲区,并立即刷新。 // 示例:
std::cout << "i = " << i << std::endl;

std::cin详解

// std::cin是一个与std::cout同样重要的标准输入流对象。在C++中,你可以通过cin读取输入的数据。    // 例如:    std::cout << "请输入两个整数:" << std::endl;    int a, b;    std::cin >> a >> b;    std::cout << "a + b = " << a + b << std::endl;    // cin是一个概念类,其行为类似于标准输入流。你可以通过>>运算符读取输入数据。    // 例如:    std::cin >> "字符串输入";    // 这将尝试将输入的全字符串读取到变量中。    // 
注意:std::cin >> 会自动处理类型转换,对于不匹配的输入,会初始化为0或默认值。例如,如果输入一个非数字字符,会被忽略直到下一个有效字符出现为止。
// 与cout一样,std::cin可以直接返回自己,支持链条操作符。 // 例如: std::cin >> a >> b >> c; // 这样可以在单一行代码中读取多个值。 //
建议在读取输入时,先检查std::cin是否成功读取数据(即检查operator>>(bool&)的返回值是否为true)。这可以避免因为输入错误或空闲输入而遇到未定义行为的问题。
关键词:C++
关键词:标准输入流
关键词:标准输出流
关键词:操作符重载

转载地址:http://lakcz.baihongyu.com/

你可能感兴趣的文章
NIH发布包含10600张CT图像数据库 为AI算法测试铺路
查看>>
Nim教程【十二】
查看>>
Nim游戏
查看>>
NIO ByteBuffer实现原理
查看>>
Nio ByteBuffer组件读写指针切换原理与常用方法
查看>>
NIO Selector实现原理
查看>>
nio 中channel和buffer的基本使用
查看>>
NIO基于UDP协议的网络编程
查看>>
NISP一级,NISP二级报考说明,零基础入门到精通,收藏这篇就够了
查看>>
Nitrux 3.8 发布!性能全面提升,带来非凡体验
查看>>
NI笔试——大数加法
查看>>
NLog 自定义字段 写入 oracle
查看>>
NLog类库使用探索——详解配置
查看>>
NLP 基于kashgari和BERT实现中文命名实体识别(NER)
查看>>
NLP 项目:维基百科文章爬虫和分类【01】 - 语料库阅读器
查看>>
NLP_什么是统计语言模型_条件概率的链式法则_n元统计语言模型_马尔科夫链_数据稀疏(出现了词库中没有的词)_统计语言模型的平滑策略---人工智能工作笔记0035
查看>>
NLP学习笔记:使用 Python 进行NLTK
查看>>
NLP的神经网络训练的新模式
查看>>
NLP采用Bert进行简单文本情感分类
查看>>
NLP问答系统:使用 Deepset SQUAD 和 SQuAD v2 度量评估
查看>>