我的编程空间,编程开发者的网络收藏夹
学习永远不晚

iostream头文件的作用有哪些

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

iostream头文件的作用有哪些

小编给大家分享一下iostream头文件的作用有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

iostream头文件包含了操作输入输出流的方法,比如读取一个文件,以流的方式读取;其作用是:让初学者有一个方便的命令行输入输出试验环境。iostream的设计初衷是提供一个可扩展的类型安全的IO机制。

C++语言不直接处理输入输出,而是通过一簇定义在标准库中的类型来处理IO。这些类型支持从设备读取数据、向设备写入数据的IO操作,设备可以是文件、控制台窗口等。还有一些类型允许内存IO,即,从string读取数据,向string写入数据。

C++/C++11中头文件<iostream>定义了标准输入/输出流对象。包含了<iostream>也自动包含了<ios>、<streambuf>、<istream>、<ostream>和<iosfwd>。

头文件<iostream>中的对象包括:

(1)、narrow characters(char)即窄字符:cin(standard input stream (object))、cout(standard output stream (object))、cerr(standard output stream for errors (object))、clog(standard output stream for logging (object));

(2)、wide characters(wchar_t)即宽字符:wcin(standard input stream (wide) (object))、wcout(standard output stream (wide)  (object))、wcerr(standard output stream for errors  (wide)  (object))、wclog(standard output stream for logging (wide) (object))。

__PURE_APPDOMAIN_GLOBAL extern _CRTDATA2 istream cin, *_Ptr_cin;__PURE_APPDOMAIN_GLOBAL extern _CRTDATA2 ostream cout, *_Ptr_cout;__PURE_APPDOMAIN_GLOBAL extern _CRTDATA2 ostream cerr, *_Ptr_cerr;__PURE_APPDOMAIN_GLOBAL extern _CRTDATA2 ostream clog, *_Ptr_clog;__PURE_APPDOMAIN_GLOBAL extern _CRTDATA2 wistream wcin, *_Ptr_wcin;__PURE_APPDOMAIN_GLOBAL extern _CRTDATA2 wostream wcout, *_Ptr_wcout;__PURE_APPDOMAIN_GLOBAL extern _CRTDATA2 wostream wcerr, *_Ptr_wcerr;__PURE_APPDOMAIN_GLOBAL extern _CRTDATA2 wostream wclog, *_Ptr_wclog;

C++ IO heads, templates and class ( https://www.ntu.edu.sg/home/ehchua/programming/cpp/cp10_IO.html ):

iostream头文件的作用有哪些

IO库:

(1)、istream(输入流)类型,提供输入操作;

(2)、ostream(输出流)类型,提供输出操作;

(3)、cin,一个istream对象,标准输入流,用来从标准输入读取数据;

(4)、cout,一个ostream对象,标准输出流,从标准输出写入数据,输出可以重定向( “>” 或“1>”)到一个指定文件中;用于将数据写入标准输出,通常用于程序的正常输出内容。

(5)、cerr,一个ostream对象,标准错误流,通常用于输出程序错误信息或与其它不属于正常逻辑的输出内容,写入到标准错误,默认情况下,写到cerr的数据是不缓冲的;错误信息可以直接发送到显示器,而无需等到缓冲区或者新的换行符时,才被显示;可以通过” 2> ”方式重定向输出到指定文件中;cerr通常用于输出错误信息或其它不属于程序正常逻辑的输出内容。

(6)、clog:一个ostream对象,标准错误流,关联到标准错误;与cerr区别:cerr和clog都是标准错误流,区别在于cerr不经过缓冲区,直接向显示器输出信息,而clog中的信息默认会存放在缓冲区,缓冲区满或者遇到endl时才输出;默认情况下,写到clog的数据是被缓冲的。clog通常用于报告程序的执行信息,存入一个日志文件中。

(7)、>>运算符,用来从一个istream对象读取输入数据;

(8)、<<运算符,用来向一个ostream对象写入输出数据;

(9)、getline函数,从一个给定的istream读取一行数据,存入一个给定的string对象中。

IO库类型和头文件:iostream定义了用于读写流的基本类型,fstream定义了读写命名文件的类型,sstream定义了读写内存string对象的类型,如下图:

iostream头文件的作用有哪些

为了支持使用宽字符的语言,标准库定义了一组类型和对象来操纵wchar_t类型的数据。宽字符版本的类型和函数的名字以一个w开始。例如,wcin、wcout和wcerr是分别对应cin、cout和cerr的宽字符版对象。宽字符版本的类型和对象与其对应的普通char版本的类型定义在同一个头文件中。

测试代码如下:

#include "iostream.hpp"#include <iostream>// reference: http://www.tutorialspoint.com/cplusplus/cpp_basic_input_output.htmint test_iostream_cout(){char str[] = "Hello C++";std::cout << "Value of str is : " << str << std::endl;return 0;}int test_iostream_cin(){char name[50];std::cout << "Please enter your name: ";std::cin >> name;std::cout << "Your name is: " << name << std::endl;return 0;}int test_iostream_clog(){char str[] = "Unable to read....";std::clog << "Error message : " << str << std::endl;return 0;}int test_iostream_cerr(){char str[] = "Unable to read....";std::cerr << "Error message : " << str << std::endl;return 0;}// reference: https://msdn.microsoft.com/en-us/library/6xwbdak2(v=vs.80).aspxstatic void TestWide(){int i = 0;std::wcout << L"Enter a number: ";std::wcin >> i;std::wcerr << L"test for wcerr" << std::endl;std::wclog << L"test for wclog" << std::endl;}int test_iostream_w(){int i = 0;std::cout << "Enter a number: ";std::cin >> i;std::cerr << "test for cerr" << std::endl;std::clog << "test for clog" << std::endl;TestWide();return 0;}

以上是“iostream头文件的作用有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

iostream头文件的作用有哪些

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

下载Word文档

猜你喜欢

iostream头文件的作用有哪些

小编给大家分享一下iostream头文件的作用有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!iostream头文件包含了操作输入输出流的方法,比如读取一个文
2023-06-14

makefile文件的作用有哪些

makefile文件的作用有以下几个方面:1. 自动化编译:makefile文件可以指定编译工具和编译选项,以及编译的依赖关系和目标文件,使得程序的编译过程可以自动化进行。2. 管理项目:makefile文件可以管理项目中的多个源文件和目标
2023-09-12

C++头文件有哪些规则

C++头文件有哪些规则,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。C++中的C++头文件是用户应用程序和函数库之间的桥梁和纽带,在整个软件中,头文件不是最重要
2023-06-17

shellexecute头文件有什么作用

ShellExecute头文件是Windows API中的一个头文件,它提供了一种简单的方法来启动外部应用程序或打开文件。通过调用ShellExecute函数,可以打开文件、启动应用程序、创建快捷方式、打开网页等。这个函数还可以接收参数,例
2023-06-13

文件服务器有哪些作用

本篇内容主要讲解“文件服务器有哪些作用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“文件服务器有哪些作用”吧! 一台文件服务器就是指一台链接在互联网上用于存储文件的计算机,并且能够为这些文件供给
2023-06-07

c++中string的头文件有什么作用

c++中的string头文件包含定义了std::string类模板、字符串操作函数和相关常量,用于创建、操作和管理可变长度的字符序列。C++ 中 string 头文件的作用C++ 中的 string 头文件包含了定义 std::strin
c++中string的头文件有什么作用
2024-05-11

pom.xml文件在Maven中的作用有哪些

本篇文章给大家分享的是有关pom.xml文件在Maven中的作用有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。如下所示:2023-05-31

java文件操作的方法有哪些

这篇文章主要讲解了“java文件操作的方法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“java文件操作的方法有哪些”吧!文件的建立/检查与删除<%@ page="" contentt
2023-06-03

Java中对文件的操作有哪些

这篇文章主要介绍“Java中对文件的操作有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Java中对文件的操作有哪些”文章能帮助大家解决问题。 java中提供了io类库,可以轻松的用java实
2023-06-03

PHP文件操作的函数有哪些

本文小编为大家详细介绍“PHP文件操作的函数有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“PHP文件操作的函数有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一:PHP文件操作函数什么意思?在PHP中
2023-06-29

node文件的读写操作有哪些

本文小编为大家详细介绍“node文件的读写操作有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“node文件的读写操作有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。fs文件系统模块什么是fs文件系统模块
2023-07-04

bat文件与Vbs文件间的常用操作方法有哪些

这篇“bat文件与Vbs文件间的常用操作方法有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“bat文件与Vbs文件间的常
2023-07-04

openfire插件的作用有哪些

Openfire插件的作用可以分为以下几类:1. 身份验证和授权插件:这些插件可以提供不同的身份验证和授权方式,如基于LDAP、数据库或其他自定义方式的身份验证插件,以及基于角色或权限的授权插件。2. 消息和聊天插件:这些插件可以增强Ope
2023-10-18

java中常用的文件操作方法有哪些

这篇文章将为大家详细讲解有关java中常用的文件操作方法有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。常用的文件的操作方法public class FileUtility {/** * 创建目录
2023-06-03

Python内置文件操作有哪些

这篇文章主要讲解了“Python内置文件操作有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python内置文件操作有哪些”吧!1、创建和打开文件想要操作文件需要先创建或代开指定文件并创
2023-07-06

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录