博客
关于我
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/

你可能感兴趣的文章
NS3 IP首部校验和
查看>>
NSDateFormatter的替代方法
查看>>
NSError 的使用方法
查看>>
NSGA-Ⅲ源代码
查看>>
nsis 安装脚本示例(转)
查看>>
NSJSON的用法(oc系统自带的解析方法)
查看>>
nslookup 的基本知识与命令详解
查看>>
NSNumber与NSInteger的区别 -bei
查看>>
NSOperation基本操作
查看>>
NSRange 范围
查看>>
NSSet集合 无序的 不能重复的
查看>>
NSURLSession下载和断点续传
查看>>
NSUserdefault读书笔记
查看>>
NS图绘制工具推荐
查看>>
NT AUTHORITY\NETWORK SERVICE 权限问题
查看>>
NT symbols are incorrect, please fix symbols
查看>>
ntelliJ IDEA 报错:找不到包或者找不到符号
查看>>
NTFS文件权限管理实战
查看>>
ntko web firefox跨浏览器插件_深度比较:2019年6个最好的跨浏览器测试工具
查看>>
ntko文件存取错误_苹果推送 macOS 10.15.4:iCloud 云盘文件夹共享终于来了
查看>>