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表示左对齐输出