广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >如何解析C++中IO流的输入输出流
  • 763
分享到

如何解析C++中IO流的输入输出流

2023-06-22 02:06:53 763人浏览 泡泡鱼
摘要

本篇文章为大家展示了如何解析c++中io流的输入输出流,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。介绍流: 若干字节数据从一端到另一端我们叫做流例如:操作文件,从程序到文件,数据的流动的操作称为流

本篇文章为大家展示了如何解析c++io流的输入输出流,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

介绍

流: 若干字节数据从一端到另一端我们叫做流

例如:操作文件,从程序到文件,数据的流动的操作称为流操作

流类体系

专门处理输入输出流、字符流、文件流,包含有:

  • 流对象

  • 流运算符 >>  <<

输入/出流对象 + 流运算符 >>  <<---处理输入输出的数据

字符流对象 + 流运算符 >>   <<   ---处理字符流

文件的对象 + 流运算符 >>  <<    ---读写文件

基本输入、输出流

istream 类---cin       输入

ostream类---cout     输出

tip:输出流除了cout外,还有一些别的对象(效果和cout一样)

  • cerr ---标准出错

  • clog ---日志文件输出

#include <iOStream>using namespace std;void testostream()     //output {//freopen()cout << "标准输出" << endl;//cin/cout都可以重定向cerr << "标准错误输出" << endl;//不能重定向 当觉得程序可能出错时用cerr输出,标识作用clog << "日志文件输出" << endl;  //可以重定向为文件}int main(){     testostream();} 

freopen

把程序的输入、输出重定向为文件

重定向是文件中的数据的格式要与程序读取的格式一致

输入重定向

#include<cstdio>#include<iostream>int main(){     freopen("1.txt","r",stdin);//参数:文件名 读写方式 流    int a,b;    scanf("%d%d",&a,&b);       //把基本输入定向为文件,程序所有的输入由文件完成    std::cout<<a+b; } 

输出重定向

#include<cstdio>#include<iostream>int main(){     freopen("1.txt","r",stdin);//参数:文件名 读写方式 流    int a,b;    scanf("%d%d",&a,&b);       //把基本输入定向为文件,程序所有的输入由文件完成    std::cout<<a+b;    freopen("2.text","w",stdout);    printf("%d",a+b); } 

字符类的处理

  • 正常的操作

  • 通过IO流对象调用成员函数的方式

单个字符和字符串的输出处理

//调用成员函数的方式传常量、变量都可以void testostream()    {//单个字符的输出    cout.put('a');          //传常量    通过IO流对象调用成员函数的方式cout << 'a' << endl;    //正常的输出方式 char c = 'C';cout.put(c);    //传变量cout << c << endl;//多个字符/字符串的输出cout.write("ILoveyou",4); }int main(){     testostream();} 

单个字符和字符串的输入处理

void testostream(){//单个字符的输入cout.put(cin.get());    //要处理回车cout << endl; //多个字符/字符串的输入cout << "字符串的处理"<<endl;while (cin.get() != '\n');//while(getchar()!='\n');char str[20] = "";   //准备一个字符串   注意不是返回值不能一步到位cin.getline(str, 20);//输入函数cout.write(str, 20); //输出函数 相对于流操作更安全,可以指定长度,同样需要清空缓冲区处理}int main() { testostream();} 

注意不能用来处理string

 string text; cin.getline(text,20);    //报错,不能处理string,只能处理char*

格式控制字符

包含头文件 <iomanip>

常用的格式控制,一种是调用成员函数方式,一种流控制字符去做

  • 设置有效位数: setprecision(n)

  • 设置精度: fixed 结合 setprecision 使用

tip:流控制字符---c++用来控制格式的操作

设置格式

int main(){ double pi = 34.12343;cout << "设置有效位数是:" << setprecision(4) << pi << endl;     //从整数位开始算cout << "有效小数位:" << fixed << setprecision(4) << pi << endl;//从小数位开始算 //所有的流控制符都会对应一个成员函数的方式cout.precision(4); cout << "有效小数位:" << pi; double pi = 34.12369;cout << "设置有效位数是:" << setprecision(4) << pi << endl;cout << "有效小数位:" << fixed << setprecision(4) << pi << endl;cout.precision(4); //所有的流控制符都会对应一个成员函数的方式cout << "有效小数位:" << pi;} 

进制输出

int main(){cout << hex << 32 << endl;  //16进制cout << oct << 15 << endl;  //8进制输出//流控制字符的方式cout << setbase(2) << 7 << endl; //2进制无效,不能是任意进制,任意进制的默认10进制输出} 

对齐方式和数据的宽度问题        制表符 '\t'

限制每个数据的位数不足补空格 

8位制表,不足8位  补空格       

超过8位,按照16位制表 

//默认右对齐int main(){   cout << setw(8) << "123" << setw(8) << "12344" << setw(8) << "3444" << endl;   cout << setiosflags(ios::left);//ios::right右对齐 ios::left左对齐 数据不够用空格占位   cout << setw(8) << "123" << setw(8) << "12344" << setw(8) << "3444" << endl;        123   12344    3444 //默认是右对齐方式123     12344   3444 123     123666

上述内容就是如何解析C++中IO流的输入输出流,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网其他教程频道。

--结束END--

本文标题: 如何解析C++中IO流的输入输出流

本文链接: https://www.lsjlt.com/news/301891.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何解析C++中IO流的输入输出流
    本篇文章为大家展示了如何解析C++中IO流的输入输出流,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。介绍流: 若干字节数据从一端到另一端我们叫做流例如:操作文件,从程序到文件,数据的流动的操作称为流...
    99+
    2023-06-22
  • C++学习之IO流(输入输出流)详解
    目录介绍基本输入、输出流freopen字符类的处理介绍 流: 若干字节数据从一端到另一端我们叫做流 例如:操作文件,从程序到文件,数据的流动的操作称为流操作 流类体系 专门处理输入输...
    99+
    2022-11-12
  • C++的输入和输出流详解
    目录输入和输出流标准输入流小案例标准输出流文件读写总结输入和输出流 从键盘输入数据,输出到显示器屏幕。这种输入输出称为标准的输入输出,简称标准I/O。 从磁盘文件输入数据,数据输出到...
    99+
    2022-11-13
  • Java IO中字节输入输出流的示例分析
    这篇文章主要介绍Java IO中字节输入输出流的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!讲的是字节输入输出流:InputStream、OutputSteam(下图红色长方形框内),红色椭圆框内...
    99+
    2023-06-26
  • C++输入和输出流的示例分析
    这篇文章给大家分享的是有关C++输入和输出流的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。输入和输出流从键盘输入数据,输出到显示器屏幕。这种输入输出称为标准的输入输出,简称标准I/O。从磁盘文件输入数据...
    99+
    2023-06-29
  • JAVA语言的输入输出流详解(c)
    详解b中的例子,详解[@more@]  1. BufferedReader是Reader的一个子类,它具有缓冲的作用,避免了频繁的从物理设备中读取信息。它有以下两个构造函数:BufferedReader(Reader in) Buffere...
    99+
    2023-06-03
  • C++之IO类,文件输入输出,string流练习题
    目录前面已经在用的IO库设施IO类IO对象不能拷贝或赋值条件状态管理输出缓冲文件输入输出fstream特有的操作文件模式string流stringstream特有的操作练习练习1练习...
    99+
    2022-11-12
  • outputStream(输出流)转inputstream(输入流)以及输入流如何复用
    目录 需求:准备: 文件、流之间的转换MultipartFile 转 inputstream(输入流)outputStream(输出流)转为 inputstream(输入流)inpu...
    99+
    2023-10-21
    java spring boot 后端
  • C++基础学习之输入输出流详解
    目录1. 输入输出流2. 文件输入输出3. 格式化输入输出4. 字符串输入输出5. 空格处理C++是一种广泛应用的编程语言,其输入和输出是程序所必须的基本操作之一。输入是指从外部获取...
    99+
    2023-05-17
    C++输入输出流 C++输入流 C++输出流
  • Java中输入/输出流体系的示例分析
    这篇文章主要介绍Java中输入/输出流体系的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Java输入/输出流体系1.字节流和字符流字节流:按字节读取。字符流:按字符读取。字符流读取方便,字节流功能强大,当不...
    99+
    2023-05-30
    java
  • C++标准输入输出流指的是什么
    C++标准输入输出流(Standard Input/Output Stream)是C++标准库提供的一组用于输入和输出的类和对象。它...
    99+
    2023-09-20
    C++
  • c++标准输入输出流关系的前世今生
    输入输出是每一种编程语言必不可少的部分,c++也不例外,下面我们就来说明c++的标准输入输出的前世今生。 1.首先说一下iostream和iostream.h的区别 #incl...
    99+
    2022-11-12
  • 图文详解Java中的字节输入与输出流
    目录字节输入流 字节输入流结构图FileInputStream类构造方法:常用读取方法:字节输出流 字节输出流结构图:FileOutputStream类构造方法:常用写入方法:总结字节输入流 java.io.InputStream抽象类是...
    99+
    2017-02-14
    java字节输入流和输出流 java文件输入输出字符流 java字节流
  • python语言中流程的输入与输出案例
    这篇文章将为大家详细讲解有关python语言中流程的输入与输出案例,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。流程中的输入,一般都会先保存在变量(即内存)中,而这个输入,可以来自于键盘(也称为标准输入)...
    99+
    2023-06-19
  • Java中的字节,字符输出流与字节和字符输入流的简单理解
    目录字节输出流OutputStream字符输出流字节输入流InputStream字符输入流Reader字节流和字符流的区别总结我先解释一下什么叫IO流: I:指的是Inpu...
    99+
    2022-11-12
  • php二进制流输出乱码如何解决
    这篇文章主要介绍了php二进制流输出乱码如何解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇php二进制流输出乱码如何解决文章都会有所收获,下面我们一起来看看吧。php二进制流输出乱码的解决办法:1、打开本地...
    99+
    2023-07-04
  • Ajax技术中servlet末尾输出流的示例分析
    这篇文章主要介绍Ajax技术中servlet末尾输出流的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Ajax的服务器端用PrintWriter out=resp.getWr...
    99+
    2022-10-19
  • C++中简单的文本文件输入/输出示例详解
    为了便于理解,我们把cout 用于控制台输出时的一些情况和写入到文本文件的情况进行类比: cout 控制台输出 包含头文件 iostream 头文件 iostream 定义了一个 o...
    99+
    2022-11-12
  • RestTemplate响应中如何获取输入流InputStream
    目录RestTemplate调用接口如何获取输入流SpringRestTemplate解析RESTfulRestTemplate​总结RestTemplate调用接口如何获取输入流 ...
    99+
    2023-01-11
    RestTemplate响应 输入流InputStream RestTemplate InputStream
  • response文件流输出文件名中文不显示的解决
    目录文件流输出文件名中文不显示使用如下方法没有解决解决方法response下载时中文文件名乱码文件流输出文件名中文不显示 response返回文件流 用response.setHea...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作