C++篇:第十二章_文件及IO_知识点大全
C++篇为本人学C++时所做笔记(特别是疑难杂点),全是硬货,虽然看着枯燥但会让你收益颇丰,可用作学习C++的一大利器
十二、文件及IO
当在输入输出流中使用控制符进行格式控制时,需在程序中加入头文件
文件的操作:
① read和write函数除了都有文件IO的用法,还有一种用法就是用于输入流输入自定义大小的字符串以及用于输出流自定义大小的字符串
② fwrite和fread 是带缓冲的IO,read和write是不带缓冲的
③ RandomAccessFile()可以附加或更新文件
④ fclose()函数是C标准库函数,不是成员函数
⑤ fgetc函数要求文件的打开方式必须是以读或读写的方式或者追加的方式,只
⑥ 写方式是不能读的
⑦ 二进制文件支持随机访问
⑧ 二进制文件除了可以作为输入文件或输出文件外,还可以是既能输入又能输出的文件,这是与ASCLL文件不同的地方
⑨ fscanf函数与scanf函数的主要区别就是在fscanf函数中第一个形参是文件指针,其他参数与scanf完全相同;即fscanf(文件指针,格式字符串,输入表列);
⑩ 打开文件的方式:
(1) 定义文件流对象时使用带参数的构造函数
(2) 是调用文件流成员函数open(打开失败时返回值为0)
- 输入:
① cin操作符是根据后面变量的类型读取数据
往一个变量中输入结束条件 :遇到Enter、Space、Tab键。
往两个变量中分别输入数据时通常会跳过换行符、Space、Tab键等空白字符(默认要求使用space,Tab,回车键作为分隔符),遇到Enter键后,数据才被送入缓冲区,故用一个或多个空格间隔,不能以逗号或其他符号间隔
② cin 表示标准输入的istream对象
③ c++输出单个字符用ostream类提供的成员函数put,putchar是C语言函数
④ istream类中已将“>>”重载为提取运算符,支持基本数据类型及其指针类型
- 输出:
① int printf ( const char * format, ... );返回值:
正确返回输出的字符总数(不包括后面的‘\0’),错误返回负值,与此同时,输入输出流错误标志将被置值,可由指示器ferror来检查输入输出流的错误标志
② C 语言中用 "%%" 打印输出字符 "%", 所以 %%d, 输出为 %d 两个普通字符 , 而不是格式控制符 "%d" 的含义
③ 用 printf 函数输出一个字符串时,格式字符为%s,输出项可以是此字符串或存放此字符串的数组的数组名
④ ostream类中已将“<<”重载为插入运算符,支持基本数据类型,指针类型以及void*类型
⑤ 字符串长度比设定长度大就按字符串实际长度输出;
字符串长度比设定长度小就按右对齐输出该字串,左补空格。
如果数字之前有-,即%-5s表示左对齐输出
C++篇:第十二章_文件及IO_知识点大全的更多相关文章
- 第十二章 Python文件操作【转】
12.1 open() open()函数作用是打开文件,返回一个文件对象. 用法格式:open(name[, mode[, buffering[,encoding]]]) -> file obj ...
- 明解C语言 入门篇 第十二章答案
练习12-1 /* 用表示学生的结构体来显示高尾的信息 */ #include <stdio.h> #define NAME_LEN 64 /* 姓名的字符数 */ /*=== 表示学生的 ...
- perl5 第十二章 Perl5中的引用/指针
第十二章 Perl5中的引用/指针 by flamephoenix 一.引用简介二.使用引用三.使用反斜线(\)操作符四.引用和数组五.多维数组六.子程序的引用 子程序模板七.数组与子程序八.文件句 ...
- PRML读书会第十二章 Continuous Latent Variables(PCA,Principal Component Analysis,PPCA,核PCA,Autoencoder,非线性流形)
主讲人 戴玮 (新浪微博: @戴玮_CASIA) Wilbur_中博(1954123) 20:00:49 我今天讲PRML的第十二章,连续隐变量.既然有连续隐变量,一定也有离散隐变量,那么离散隐变量是 ...
- sql 入门经典(第五版) Ryan Stephens 学习笔记 (第六,七,八,九,十章,十一章,十二章)
第六章: 管理数据库事务 事务 是 由第五章 数据操作语言完成的 DML ,是对数据库锁做的一个操作或者修改. 所有事务都有开始和结束 事务可以被保存和撤销 如果事务在中途失败,事务中的任何部分都不 ...
- 《Linux命令行与shell脚本编程大全》 第二十二章 学习笔记
第二十二章:使用其他shell 什么是dash shell Debian的dash shell是ash shell的直系后代,ash shell是Unix系统上原来地Bourne shell的简化版本 ...
- 《Android群英传》读书笔记 (5) 第十一章 搭建云端服务器 + 第十二章 Android 5.X新特性详解 + 第十三章 Android实例提高
第十一章 搭建云端服务器 该章主要介绍了移动后端服务的概念以及Bmob的使用,比较简单,所以略过不总结. 第十三章 Android实例提高 该章主要介绍了拼图游戏和2048的小项目实例,主要是代码,所 ...
- [CSAPP笔记][第十二章并发编程]
第十二章 并发编程 如果逻辑控制流在时间上是重叠,那么它们就是并发的(concurrent).这种常见的现象称为并发(concurrency). 硬件异常处理程序,进程和Unix信号处理程序都是大家熟 ...
- JavaScript DOM编程艺术-学习笔记(第十二章)
第十二章 1.本章是综合前面章节的所有东西的,一个综合实例 2.流程:①项目简介:a.获取原始资料(包括文本.图片.音视频等) b.站点结构(文件目录结构) c.页面(文件)结构 ②设计(切图) ③c ...
- 《Django By Example》第十二章 中文 翻译 (个人学习,渣翻)
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:第十二章,全书最后一章,终于到这章 ...
随机推荐
- DeepSpeed框架:1-大纲和资料梳理
DeepSpeed是一个深度学习优化软件套件,使分布式训练和推理变得简单.高效和有效.它可以做些什么呢?训练/推理具有数十亿或数万亿参数的密集或稀疏模型:实现出色的系统吞吐量并有效扩展到数千个GP ...
- linux- 挂载本地iso,配置本地yum
------------------------------------ 关于centos8安装vm-tools: workstation部署centos8之后,不需要单独安装vm-tools,系统已 ...
- Python:利用math和random模块实现RSA加密算法
实验五报告: 利用math和random模块实现RSA加密算法 实验目标 本实验的主要目标是熟悉RSA(Rivest-Shamir-Adleman)密码算法的编写,其中包括求最大公因子.模逆的扩展欧几 ...
- NOI 2023 游记
Day0=2023.7.23. Day -?? 订了 30 个徽章.很快认识到可能不够,又自己买了 30 个. Day -? UNR,完全没有精神状态于是两天都考半场睡半场.0+10+55,成功 Fe ...
- 如何借助python第三方库存取不同应用程序的用户名、密码
在之前的一系列文章中,小爬分享了很多用Pywin32.uiAutomation.sap Gui Script等技术实现应用程序或者Web网站(如SAP.Excel.outLook邮件系统.OA系统)的 ...
- webpack配置打包
一.webpack基本安装 1.创建webpack项目目录如webpackDemo,并进入webpackDemo; 2. 在node已经安装的前提下,打开命令行控制器,输入如下命令: npm init ...
- 夯实JAVA基本之一——泛型详解(2):高级进阶(转)
上一篇给大家初步讲解了泛型变量的各种应用环境,这篇将更深入的讲解一下有关类型绑定,通配符方面的知识. 一.类型绑定1.引入我们重新看上篇写的一个泛型:class Point<T> { pr ...
- DX后台截图C++实现代码
DX后台截图C++实现代码 文章仅发布于https://www.cnblogs.com/Icys/p/DXGI.html和知乎上. 传统的GDI API (BitBlt)虽然可以完美的完成后台截图的任 ...
- 通过计算巢轻松部署ROS自定义资源
概述 阿里云资源编排服务ROS(Resource Orchestration Service)可以帮助您简化云计算资源的管理.遵循ROS定义的模板规范,您可以定义所需云计算资源的集合及资源间的依赖关系 ...
- 🔥🔥Java开发者的Python快速进修指南:实战之跳表pro版本
之前我们讲解了简易版的跳表,我希望你能亲自动手实现一个更完善的跳表,同时也可以尝试实现其他数据结构,例如动态数组或哈希表等.通过实践,我们能够发现自己在哪些方面还有所欠缺.这些方法只有在熟练掌握之后才 ...