C Primer Plus 学习笔记系列之(二)
2013-08-18 20:39
274 查看
文件输入和输出
文件是什么?文件是磁盘上的一段存储区,可以分散存储,还有可能包含一些让操作系统判断其类型的附加数据。
C将文件看成是连续的字节序列,其中每一个字节可以单独地读取
ANSI C将文件分成两种视图:文本视图和二进制视图。
在文本视图中,程序看到的内容和文件的内容有可能不同
IO级别
低级IO:使用操作系统提供的基本IO服务(随操作系统不同而不同)
标准高级IO:使用标准的C库函数报和stdio.h头文件中的定义
ANSI C 只支持标准高级IO,便于移植,而且包含各种专用的函数,可以方便地处理不同的IO问题,此外对输入和输出进行缓冲。
函数
fopen('1.txt','w');fclose(fp);
参考文件的打开模式
getc(fp); putc(ch,fp);
这两个函数是从文件读取单个字符和写入文件
getchar(ch);putchar(ch);
这两个函数都是从终端读取单个字符和显示在终端上
gets(char *);puts(char*);
gets()函数从命令行读取字符,读取换行符后将其丢弃
puts()函数在打印到终端的时候,要打印换行符
fgets(char*,MAX,fp);fputs(char*buf,fp)
fgets()读取到所遇到的第一个换行字符的后面,或者读取比字符的最大长度少一个的字符,或者读取到文件的结尾,保留换行符,而gets()读取到换行符后将其丢弃
fputs()打印的时候不添加换行符
scanf("%d",&i);printf("%d",i);
从终端格式化读取和写入
fscanf(fp,"%d",&i);fprintf(fp,"%d",i)
从文件格式化读取和写入
rewind(fp);fgetpos();fsetpos();feof();
rewind(fp)使得程序回到文件开始处
fseek(fp,long offset,int origin);ftell(fp)
随机存取函数
fseek()返回一个int值,0代表成功定位,非0代表错误
ftell(fp)返回一个long值,代表文件的当前位置
fread();fwrite();
二进制I/O
相关文章推荐
- 《C Primer Plus》 学习笔记系列之(三)
- 《C Primer Plus》 学习笔记系列之(二)
- C Primer Plus 学习笔记系列之(一)
- 《C Primer Plus》 学习笔记系列之(一)
- C Primer Plus 学习笔记系列之(三)
- 《C Primer Plus》 学习笔记系列之(四)
- 《C Primer Plus》 学习笔记系列之(五)
- 《C++ Primer Plus》15.5 类型转换运算符 学习笔记
- C Primer Plus学习笔记----第三章数据和C
- 2012/1/19 《C++ Primer Plus》第七章:函数——C++编程模块 学习笔记
- 2012/1/25 《C++ Primer Plus》第十一章:使用类 学习笔记
- [C++ Primer Plus]学习笔记--C++内联函数
- 《C++ Primer Plus》15.1 友元 学习笔记
- 2012/2/7 《C++ Primer Plus》第十六章:string类和标准模板库 学习笔记
- 《C++ Primer Plus》16.3 标准模板库 学习笔记
- C Primer Plus(第五版)学习笔记-可变宏:...和__VA_ARGS__
- C++ Primer 学习笔记系列1
- C++ Primer plus 学习笔记之第九章内存模型和名称空间(1)
- 2012/1/21 《C++ Primer Plus》第八章:函数探幽 学习笔记
- 2012/1/25 《C++ Primer Plus》第十一章:使用类 学习笔记