- 1、本文档共19页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
cprimer学习笔记教程
C Primer
始于2014-11-12
文字颜色说明:
正文中的黑色粗字体表示首次看时,觉得比较重要的文字
正文中的红色表示,复习笔记后添加的知识点
ANSI(American National Standards Institute) 美国国家标准协会
第13章 文件输入输出
13.1 和文件进行通信
13.1.1 文件是什么
C将文件看成是连续的字节序列,其中每一个字节都可以单独的读取;
13.1.2 文本视图和二进制视图
二进制视图中,每一个字节都可以为程序所访问;
文本视图中,不同的操作环境(操作系统),程序所看到的内容和文件有可能不同(例如行尾的标志)
13.1.4 标准文件
C语言提供3种标准文件。标准输入、标准输出、标准错误输出;
标准输入:getchar()、gets()、scanf()
标准输出:putchar()、puts()、printf()
13.2 标准I/O
13.2.1 检查命令行参数
return 0 与exit(0)的区别:
最初调用的main函数中二者是一样的,main在一个递归程序中时,exit()会终止程序,而return只返回递归的前一级。
在main函数以外的函数中调用exit也会终止程序
13.2.2 fopen()函数
fopen(参数1,参数2)
参数1:是一个地址(指针或数组),数组中包含要打开的文件名
参数2:是一个字符串,指定打开文件的模式。有以下7大类模式
“r” 打开一个文本文件,可以读取文件
“w” 打开一个文本文件,可以写入文件,先将文件长度截为0。若该文件不存在,先创建
“a” 打开一个文本文件,向已有文件的尾部追加内容。若不存在,先创建
“r+” 打开一个文本文件,可以进行更新,也可以读取和写入
“w+” 打开一个文本文件,可以进行更新(读取和写入)。先将文件长度截为0,没有则先创建
“a+” 打开一个文本文件,可以进行更新(读取和写入),读取整个文件,写入时只能向尾部追加内容
返回:fopen函数返回一个文件指针fp,这个指针指向FILE(stdio.h中定义的一种派生类型),fp指向关于文件的信息的数据包。如果不能打开文件则返回一个空指针NULL。
13.2.3 getc()函数和putc()函数
getc() ch = getc(fp) 表示从fp指定的文件中获得一个字符;
putc(参数1,参数2)
putc(ch,fpout) 表示将字符ch写入到FILE指针fpout指定的文件中
13.2.4 2文件结尾
从文件中读取数据的程序需要在到大文件的结尾时停止。到达文件结尾时,getc()函数会返回一个特殊值EOF
13.2.5 fclose()函数
Fclose(fp)关闭由指针fp指定的文件,同时根据需要刷新缓冲区。
13.2.6 标准文件指针
包含3个标准文件指针:stdin(标准输入)、stdout(标准输出)、stderr(标准错误)
13.3 一个简单的文件压缩程序
13.4 文件I/O
每个I/O函数都存在一个相似的文件I/O函数。文件I/O函数需要使用一个FILE指针来为这些函数指定要操作的文件。
13.4.1 fprintf()和fscanf()函数
fprintf()和fscanf()
fprintf/fscanf(参数1,参数2,参数3)
参数1为FILE指针;例如fprintf(fp,“%s”,words)其中fp是FILE指针,words是数组名称;
rewind(参数1) 使程序回到文件开始处,参数1必须是一个文件指针;
13.4.2 fgets()和fputs()函数
fgets(参数1,参数2,参数3) fgets(buf,max,fp)
参数1:一个地址,用于存储输入值的地址
参数2:一个整数,输入字符串的最大长度
参数3:一个文件指针,这个指针指向要读取的文件
返回值:返回传递给它的地址值,当遇到EOF时,返回NULL
fgets()函数读取到它遇到的第1个换行字符的后面,或者读取比字符串的最大长度少一个的字符,或者读取到文件结尾。然后fgets()向末尾添加一个空字符以构成一个字符串。如果fgets在达到字符最大数目之前读完一整行,它将在字符串的空字符前添加一个换行符以表示一行结束。
Fputs(参数1,参数2)
把字符串地址指针所指的字符串写入指定的文件。(与fgets相比,没有写入的长度,因为字符串包含结束符)
参数1:一个地址,是要写入到文件的字符串的地址
参数2:一个文件指针,指向要写入字符串的文件
fgets保留了换行符,fputs
您可能关注的文档
最近下载
- DLT-612-2017-电力行业锅炉压力容器安全监督规程.pdf
- 北师大版九年级数学下册教案(完整版)全册教学设计.doc
- 2023-2024学年下学期《形势与政策》学习通超星期末考试答案章节答案2024年.docx
- 2021至2022学年上学期中学化学沪教版期中考题之电解水实验(有答案与解析).pdf
- 龙王池尾矿库回采和利用项目(闪星锑业公司)环境影响报告.pdf
- 山东玻纤:首次公开发行股票招股说明书摘要.docx
- 东风本田-享域(ENVIX)-产品使用说明书-享域(ENVIX)乐享版-DHW7103FSCSF-享域(ENVIX)用户手册(2019款).pdf
- 江苏-南京市 2023-2024学年六年级英语上学期期末真题汇编卷 (含答案解析).docx VIP
- 2024年软件资格考试软件设计师(中级)(基础知识、应用技术)合卷试题及解答参考.docx VIP
- 急性心肌梗死合并心原性休克诊断和治疗专家共识(2021版)解读.pptx
文档评论(0)