c++ 输入输出流关联
#include <iostream>
#include <string>
#include <fstream>
#include <sstream>
using namespace std;
int main()
{
cout << cin.tie() << endl; //打印cin的关联流的地址
cout << &cout << endl; //打印cout的地址
cout << &cin << endl; //打印地址
cout << cout.tie() << endl; //打印关联流地址
cout <<"tie the cerr to cout " << endl;
cout.tie(&cerr); //把cerr关联到cout
cout << cout.tie() << endl; //打印cout的关联流,即打印cerr的地址
cout << &cerr <<endl; //打印cerr的地址
cout.tie(nullptr); //彻底解开关联流,关联流都被解开了把?
cout << "free the tie:"<<cout.tie() <<endl; //
cout.tie(nullptr); //解开cout 的关联流
cout << cout.tie() <<endl;
cout << "tie the new:" <<endl;
ostream * old_tie = cin.tie(nullptr); //解开cin的挂链流,并且把cin原来的关联流返回
cout << "old value: "<< old_tie << endl; //
cout << "now 's cin ' s tie is:" <<cin.tie()<< endl;
return 0;
}
几个总结:
(1)无论是关联还是解开,都是被关联的流作为主要职责。即调用tie的那个流作为主要的行使权利,它如果要其它流关联到它,那么会调用tie函数,strm.tie(& strm2) 把strm2关联到strm上
(2)如果要解开流的关联,那么strm调用tie来解开。strm.tie(nullptr)则可以了。
(3)谁调用关联,那么谁就调用tie(nullptr)去解开关联。并且这个流如果执行,那么被关联流strm2会首先清除缓存
c++ 输入输出流关联相关推荐
- c++一日一练:让标准的输入输出流关联一个缓冲区
上篇文章讲述了如何创建自己的标准输入输出,但是如何将标准的输入输出流进行重定向呢: 下面是一个具体的方法: fp = _fdopen( hConHandle, "w" ); ...
- C++_IO类型_文件输入输出流_字符串流
IO类型 iostream: 用于窗口的输入输出 fstream: 用于文件读写 sstream :读写存储在内存中的string对象 注:他们继承于istream与ostream,因此istream ...
- Java IO (二),常见的输入/输出流
字节流和字符流 InputStream和Reader InputStream和Reader两个抽象类是所有输入流的基类,本身并不能创建实例来执行输入,但它们将成为所有输入流的模板.他们的方法是所有输入 ...
- java输出流缓冲区内容清除,Java输入输出流与缓冲区的使用
Java输入输出流与缓冲区的使用,有需要的朋友可以参考下. 一,Input/Output流: 将外设中的数据读取到内存中就是输入. 将内存中的数据写入到外设中就是出. I/O流就是用来处理设备间的 . ...
- 1.7 Java字符流的使用:字符输入/输出流、字符文件和字符缓冲区的输入/输出流
尽管 Java 中字节流的功能十分强大,几乎可以直接或间接地处理任何类型的输入/输出操作,但利用它却不能直接操作 16 位的 Unicode 字符.这就要用到字符流.本节将重点介绍字符流的操作. 字符 ...
- au加载默认的输入和输出设备失败_一文带你读懂 C/C++ 语言输入输出流与缓存区...
(给CPP开发者加星标,提升C/C++技能) 作者:技术让梦想更伟大 / 李肖遥 (本文来自作者投稿) 前言 有没有发现,基本上所有的C语言入门书籍,或者是我们的教程里面,第一个C语言程序实体,都是& ...
- C++学习笔记:(九)输入/输出流
目录 9.输入/输出流 9.1C++流类库简介 9.2输入/输出流 9.3自定义类型的输入/输出 9.4文件输入/输出 9.输入/输出流 数据的输入.输出是最重要的操作,C++ 的输入.输出有 ios ...
- Java输入/输出流体系中常用的流分类
java输入/输出流体系中常用的流分类 分类 字节输入流 字节输出流 字符输入流 字符输出流 抽象基类 InputStream OutputStream Reader Writer 访问文件 File ...
- PHP-php://(类型)访问各个输入/输出流以及全局变量$HTTP_RAW_POST_DATA讲解
$_POST $HTTP_RAW_POST_DATA php://input 先来讲以上三者的区别: $_POST:以关联数组方式组织提交的数据, 并对原数据进行编码处理(urldecode)和编码转 ...
最新文章
- win7建立wifi热点
- SQL数据库面试题以及答案!
- 3件Unreal Engine 3不得不说的故事
- 虚拟现实技术在汽车领域的应用----数虎图像科技
- 为什么都建议学java而不是python-为什么都建议学Java而不是Python?两者有什么区别吗?...
- 项目管理方面的几个.NET开源项目
- python开发助理s_如何使用Python构建自己的AI个人助理
- 台服DNF修改Script.pvf文件修改黑钻抽奖机的道具爆率,图文详解
- 批处理bat优化Win10 LTSC 2019系统设置
- AT绑定句柄无效和拒绝访问
- 【ROS基础】.launch文件语法记录
- win系统的阿里云服务器部署IDEASpringBoot项目保姆级教程
- Shiro session过期跳转到登录页面问题
- scpjsv3模组链接_我的世界scpv3模组
- 2021年装载机司机(建筑特殊工种)找解析及装载机司机(建筑特殊工种)考试总结
- linux镜像包含redis吗,Linux虚拟机镜像\redis安装
- PL/0语言 词法分析
- C++多线程同时读同一文件
- PostgreSQL数据库查询——scan.l分析
- 免拆诊断 | 2010款长城C30车加速无力
热门文章
- Junit单元测试学习笔记一
- 在MAC下搭建JSP开发环境
- [网络安全自学篇] 四十五.病毒详解及批处理病毒原理分析(自启动、修改密码、定时关机、蓝屏、进程关闭)
- C# 系统应用之获取Windows最近使用记录
- OpenGL之3D数学的向量和矩阵
- 题目 1004: [递归]母牛的故事
- 《每日一题》48. Rotate Image 旋转图像
- BASIC-7 特殊的数字
- 2018年第九届省赛C/C++A组第3题——乘积尾零
- 【Qt】QModbusRtuSerialSlave类