C++中基本的输入输出
1.Cpp中基本的输入输出
- C++标准库提供了一组丰富的输入/输出功能,将在后续的章节进行介绍。本章将讨论C++编程中最基本和最常见的I/O操作。C++的I/O发生在流中,流是字节序列。如果字节流是从设备(如键盘、磁盘驱动器、网络连接等)流向内存,这叫做输入操作。如果字节流是从内存流向设备(如显示屏、打印机、磁盘驱动器、网络连接等),这叫做输出操作。
2.I/O库文件介绍
2.1 标准输出流cout
- 预定义的对象cout是iostream类的一个实例。cout对象"连接"到标准输出设备,通常是显示屏。cout是与流插入运算符<<结合使用的,如下所示:
// 标准输出coutchar str[] = {"Hello C++"};cout << "Value of str is: " << str << endl;
- C++编译器根据要输出变量的数据类型,选择合适的流插入运算符来显示值。<<运算符被重载来输出内置类型(整型、浮点型、double型、字符串和指针)的数据项。流插入运算符<<在一个语句中可以多次使用,如上面实例中所示,endl用于在行末添加一个换行符。
2.2 标准输入流cin
- 预定义的对象cin是iostream类的一个实例。cin对象附属到标准输入设备,通常是键盘。cin是与流提取运算符>>结合使用的,如下所示:
// 标准输入cincout << "请输入你的名字: ";char name[50];cin >> name;cout << "你的名字是: " << name << endl;
- C++编译器根据要输入值的数据类型,选择合适的流提取运算符来提取值,并把它存储在给定的变量中。流提取运算符>>在一个语句中可以多次使用,如果要求输入多个数据,可以使用如下语句:
cin >> name >> age; 等价于cin >> name ; cin >> name;
2.3 标准错误流cerr
- 预定义的对象cerr是iostream类的一个实例。cerr对象附属到标准错误设备,通常也是显示屏,但是 cerr对象是非缓冲的,且每个流插入到cerr都会立即输出。cerr也是与流插入运算符<<结合使用的,如下所示:
// 标准错误cerrchar error[] = "出现错误啦...";cerr << error << endl;
2.4 标准日志流clog
- 预定义的对象clog是iostream类的一个实例。clog对象附属到标准错误设备,通常也是显示屏,但是 clog 对象是缓冲的。这意味着每个流插入到clog都会先存储在缓冲在,直到缓冲填满或者缓冲区刷新时才会输出。clog也是与流插入运算符<<结合使用的,如下所示:
// 标准日志流clogchar logs[] = "记录日志...";clog << logs << endl;
3.输入输出流中的函数(模板)
```cout << setiosflags(ios::left|ios::showpoint); // 设置做对齐,一一般的实数方式显示cout.precision(5); // 设置除小数点外有5位有效数字cout << 124.456789 << endl;cout.width(10); // 设置显示域宽10cout.fill('*'); // 在显示区域空白处用*填充cout << resetiosflags(ios::left); // 清楚状态左对齐cout << setiosflags(ios::right); // 设置右对齐cout << 123.456789 << endl;cout << setiosflags(ios::left|ios::fixed); // 设置左对齐,以固定小数位显示cout.precision(3); // 设置实数显示3位小数cout << 999.123456 << endl;cout << resetiosflags(ios::left|ios::fixed); // 清楚左对齐和定点格式cout << setiosflags(ios::left|ios::scientific); // 设置左对齐,以科学技术法显示cout.precision(3); // 设置保留3位小数cout << 123.456789 << endl;
```
- 其中cout.setf跟setiosflags一样,cout.precision跟setprecision一样,cout.unsetf跟 resetiosflags一样。
setiosflags(ios::fixed) 固定的浮点显示 setiosflags(ios::scientific) 指数表示 setiosflags(ios::left) 左对齐 setiosflags(ios::right) 右对齐 setiosflags(ios::skipws) 忽略前导空白 setiosflags(ios::uppercase) 16进制数大写输出 setiosflags(ios::lowercase) 16进制小写输出 setiosflags(ios::showpoint) 强制显示小数点 setiosflags(ios::showpos) 强制显示符号
C++中基本的输入输出相关推荐
- c++怎么输入带有空格的字符串_CCF CSP-J/S中常用的输入输出 总结(三)
实验环境: DEV-C++ 5.11 六.关于文件的输入输出 七.关于string类型变量的赋值和连接操作 八.关于string类型的主要函数和运算 六.关于文件的输入输出 需要使用头文件#inclu ...
- python输出变量代码_Python中变量的输入输出实例代码详解
1.变量的输入: input函数: input() input("请输入银行卡密码") password = input("请输入银行卡密码") 变量名 = i ...
- c语言怎么清空标准输入缓冲区,C语言中如何清空输入输出缓冲区
C语言中如何清空输入输出缓冲区 答案:5 信息版本:手机版 解决时间 2019-10-06 09:40 已解决 2019-10-05 13:54 C语言中如何清空输入输出缓冲区 最佳答案 2019- ...
- Golang中的格式化输入输出
Golang中的格式化输入输出 打印输出 在Go语言中有多种输出方式,不同的输出适用场景不同.归纳起来有三种,每种还分为3种方式(原内容.原内容+ln.原内容+f) PrintXX() FprintX ...
- Java中的文件输入输出操作如何实现
Java是一门广泛应用的编程语言,它被用于开发各种类型的应用程序,包括桌面应用.服务器端应用和移动应用.在Java中,文件输入输出操作是很常见的,因为它们可以用于读取和写入文件数据.在本文中,我们将探 ...
- MFC中使用控制台窗口输入输出
现在Windows编程一般都使用窗口程序设计,即GUI模式.但有时我们需要输出一些信息用于调试或查看某些状态,以前我都是在窗口上加一个Edit控件,然后把需要的信息输出到Edit控件里,但这样严重影响 ...
- lstm 输入数据维度_理解Pytorch中LSTM的输入输出参数含义
本文不会介绍LSTM的原理,具体可看如下两篇文章 Understanding LSTM Networks DeepLearning.ai学习笔记(五)序列模型 -- week1 循环序列模型 1.举个 ...
- 重定向程序中的系统输入输出
当一个应用程序写好后,为了调试或其它需要我们往往需要重新定向程序的输入输出,如:将程序的调试信息从控制台记入文件已备分析等.在不改变已有程序的情况下,无论是Windows应用程序还是Java应用程序, ...
- C中文件的输入输出与C++的文件流
C中文件输入输出 文件的缓冲区: 每一个被使用的文件都在内存中用一个FILE结构体来存储相应的文件信息(如文件的名字.文件的状态.文件当前位置等).FILE的定义在stdio.h中 typedef s ...
最新文章
- jCryptoJS 、C#互通加密(MD5版)
- reactjs组件实例的三大属性之state属性使用示例
- 王爽《汇编语言(第三版)》检测点11.1
- Linux下安装配置JDK
- 用pythone画棵圣诞树,祝大家圣诞快乐
- JavaScript 获取 当前日期和三十天以前日期
- 在silverlight中,创建webservice的client报错
- java applet介绍,Java Applet教程介绍
- 有关js获取屏幕宽度问题
- mac 磁盘分区 diskutil命令
- Kaggle比赛——预测未来销售(三)
- 知识点总结之学习方式
- igraph与netwrokx的转换
- XAMARIN.ANDROID的安装
- 任天堂 Wii 模拟器 Dolphin 已原生支持苹果 M1 Mac 电脑
- nodejs控制台打印图案
- “专精特新”背后的京东动力
- 微信H5网页分享只显示链接处理办法
- 用python做归结演绎推理_Python中惯用的一些操作总结(未完待续)
- 大众点评网的网站架构