C语言文件的使用方法

C语言文件的使用方法:所谓“文件”是指一组相关数据的有序集合。 这个数据集有一个名称,叫做文件名。 实际上在前面的各章中我们已经多次使用了文件,例如源程序文件、目标文件、可执行文件、库文件 (头文件)等。文件通常是驻留在外部介质(如磁盘等)上的, 在使用时才调入内存中来。从不同的角度可对文件作不同的分类。从用户的角度看,文件可分为普通文件和设备文件两种。以下是小编为大家搜索整理的C语言文件的使用方法,欢迎阅读!更多精彩内容请及时关注我们应届毕业生考试网!

普通文件是指驻留在磁盘或其它外部介质上的一个有序数据集,可以是源文件、目标文件、可执行程序; 也可以是一组待输入处理的原始数据,或者是一组输出的结果。对于源文件、目标文件、 可执行程序可以称作程序文件,对输入输出数据可称作数据文件。 来源:www.examda.com

设备文件是指与主机相联的各种外部设备,如显示器、打印机、键盘等。在操作系统中,把外部设备也看作是一个文件来进行管理,把它们的`输入、输出等同于对磁盘文件的读和写。 通常把显示器定义为标准输出文件, 一般情况下在屏幕上显示有关信息就是向标准输出文件输出。如前面经常使用的printf,putchar 函数就是这类输出。键盘通常被指定标准的输入文件, 从键盘上输入就意味着从标准输入文件上输入数据。scanf,getchar函数就属于这类输入。

从文件编码的方式来看,文件可分为ASCII码文件和二进制码文件两种。

ASCII文件也称为文本文件,这种文件在磁盘中存放时每个字符对应一个字节,用于存放对应的ASCII码。例如,数5678的存储形式为:

ASC码:  00110101 00110110 00110111 00111000

↓     ↓    ↓    ↓

十进制码: 5     6    7    8 共占用4个字节。ASCII码文件可在屏幕上按字符显示, 例如源程序文件就是ASCII文件,用DOS命令TYPE可显示文件的内容。 由于是按字符显示,因此能读懂文件内容。

二进制文件是按二进制的编码方式来存放文件的。 例如, 数5678的存储形式为: 00010110 00101110只占二个字节。二进制文件虽然也可在屏幕上显示, 但其内容无法读懂。C系统在处理这些文件时,并不区分类型,都看成是字符流,按字节进行处理。 输入输出字符流的开始和结束只由程序控制而不受物理符号(如回车符)的控制。 因此也把这种文件称作“流式文件”。

本章讨论流式文件的打开、关闭、读、写、 定位等各种操作。文件指针在C语言中用一个指针变量指向一个文件, 这个指针称为文件指针。通过文件指针就可对它所指的文件进行各种操作。 定义说明文件指针的一般形式为: FILE* 指针变量标识符; 其中FILE应为大写,它实际上是由系统定义的一个结构, 该结构中含有文件名、文件状态和文件当前位置等信息。 在编写源程序时不必关心FILE结构的细节。例如:FILE *fp; 表示fp是指向FILE结构的指针变量,通过fp 即可找存放某个文件信息的结构变量,然后按结构变量提供的信息找到该文件, 实施对文件的操作。习惯上也笼统地把fp称为指向一个文件的指针。文件的打开与关闭文件在进行读写操作之前要先打开,使用完毕要关闭。 所谓打开文件,实际上是建立文件的各种有关信息, 并使文件指针指向该文件,以便进行其它操作。关闭文件则断开指针与文件之间的联系,也就禁止再对该文件进行操作。

在C语言中,文件操作都是由库函数来完成的。 在本章内将介绍主要的文件操作函数。

文件打开函数fopen

fopen函数用来打开一个文件,其调用的一般形式为: 文件指针名=fopen(文件名,使用文件方式) 其中,“文件指针名”必须是被说明为FILE 类型的指针变量,“文件名”是被打开文件的文件名。 “使用文件方式”是指文件的类型和操作要求。“文件名”是字符串常量或字符串数组。例如:

FILE *fp;

fp=("file a","r");

其意义是在当前目录下打开文件file a, 只允许进行“读”操作,并使fp指向该文件。

又如:

FILE *fphzk

fphzk=("c:\\hzk16',"rb")

其意义是打开C驱动器磁盘的根目录下的文件hzk16, 这是一个二进制文件,只允许按二进制方式进行读操作。两个反斜线“\\ ”中的第一个表示转义字符,第二个表示根目录。使用文件的方式共有12种,下面给出了它们的符号和意义。

文件使用方式        意 义

“rt”      只读打开一个文本文件,只允许读数据

“wt”      只写打开或建立一个文本文件,只允许写数据

“at”      追加打开一个文本文件,并在文件末尾写数据

“rb”      只读打开一个二进制文件,只允许读数据

“wb”       只写打开或建立一个二进制文件,只允许写数据

“ab”       追加打开一个二进制文件,并在文件末尾写数据

“rt+”      读写打开一个文本文件,允许读和写

“wt+”      读写打开或建立一个文本文件,允许读写

“at+”      读写打开一个文本文件,允许读,或在文件末追加数 据

“rb+”      读写打开一个二进制文件,允许读和写

“wb+”      读写打开或建立一个二进制文件,允许读和写

“ab+”      读写打开一个二进制文件,允许读,或在文件末追加数据

【C语言文件的使用方法】相关文章:

c语言文件有什么作用,C语言文件的使用方法相关推荐

  1. linux各个文件夹作用是什么,我的世界游戏文件夹目录作用介绍 各个文件夹都是什么用...

    我的世界游戏文件夹目录作用介绍 各个文件夹都是什么用.那下面给大家介绍的则是我的世界游戏文件夹目录索引的内容哦~那到底在我的世界文件夹中各个文件夹都有设么作用呢?那下面一一介绍一下吧! 游戏园我的世界 ...

  2. c语言的应用与作用,C语言主要应用在什么地方?

    C语言是一种计算机程序设计语言.它既有高级语言的特点,又具有汇编语言的特点.它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序.因此,它的应用范围 ...

  3. c语言eof不起作用,c语言程序设计 怎么以输入EOF结束

    EOF(EndOfFile)是C语言中的文件结束标志符.当C语言输入函数获取到文件结尾标志时,会通过返回值的方式体现该值.所以要以输入EOF为结束,就需要判断输入函数的返回值.EOF定义在stdio. ...

  4. c语言inline有什么作用,C语言inline的用法

    inline这个关键词,是从C99开始出现的.它要解决的问题很明确,对于那些短小精干频繁调用的函数,如果是inline的,编译的时候,函数调用位置会被替换成函数的代码块,省掉了函数调用的压栈出栈等操作 ...

  5. c语言对编程对作用,c语言编程心得体会

    c语言编程心得体会 c语言是在国内外广泛使用的一种计算机语言.以下是小编整理的c语言编程心得体会,欢迎大家阅读! c语言编程心得体会1 说到我学习c语言时,真是用千言万语呀!记得刚开始学的时候,我的c ...

  6. c语言链表head的作用,c语言链表的用法

    c语言链表的用法 链表是数据结构中比较基础也是比较重要的类型之一,那么有了数组,为什么我们还需要链表呢!或者说设计链表这种数据结构的初衷在哪里?下面小编就为大家介绍下c语言链表的用法. c语言枚举的用 ...

  7. c语言(cn)括号的作用,c语言小括号的用法

    c语言小括号的用法 C语言的小括号里面表示一条语句,返回值是多条语句中最靠右的语句的返回值,比如(a=2,b=3,c=a+b),返回值就是c的值.下面小编就为大家介绍c语言小括号的用法. c语言小括号 ...

  8. c语言位与运算的作用,c语言位运算符的用法

    c语言位运算符的用法 C语言中位运算的运算分量只能是整型或字符型数据,位运算把运算对象看作是由二进位组成的位串信息,按位完成指定的运算,得到位串信息的结果.下面小编就为大家介绍下c语言位运算符的用法. ...

  9. c语言read有什么作用,C语言read()函数:用于读取打开文件的内容

    函数名:read 头文件: 函数原型: int read(int handle,void *buf,int len); 功能:用于读取打开文件的内容 参数:int handle 为要读取的文件 voi ...

最新文章

  1. (C++)寻找1-100以内所有素数,复杂度为O(nsqrt(n))与O(nloglogn)的两种方法
  2. 汇编小程序---计算十以内两个数的相加
  3. linux日志本地存储和网络存储,文件系统和本地存储管理 1
  4. ASP.NET 连接MySql数据库
  5. [vue] 第一次加载页面时会触发哪几个钩子?
  6. html股票数据代码,股票数据的网站抓取(4.2)代码优化
  7. python缩进格式错误的是_Python 中常见错误总结
  8. android menuitem 字体颜色,安卓更改Menu的字体颜色(使用actionLayout,适用于多个fragment)...
  9. Oracle数据库配置方案,oracle数据库各项参数参考配置方案
  10. 聚焦BCS|新华网:2020年北京网络安全大会开幕
  11. GZip、Deflate压缩算法对应的C#压缩解压函数
  12. NHibernate.3.0.Cookbook第一章第六节Handling versioning and concurrency的翻译
  13. d盾web查杀 linux,D盾Web查杀
  14. ☆汇总☆电力电子技术simulink仿真电路分析
  15. 剖析搜索引擎背后的经典数据结构和算法
  16. python生成树状图_使用python的分层聚类树状图
  17. starUML建立模型及生成代码框架
  18. 和Leo一起做爱线段树的好孩子HDU5238 Calculator
  19. 我在创业游戏公司的一年
  20. 服务器和普通电脑有什么区别?

热门文章

  1. cisco 认证 linux,誉天 Cisco Linux 认证社区.PDF
  2. 强网杯 2018 opm
  3. Shell编程入门-Shell程序设计实例
  4. 基于C#制作一个休息提醒闹钟
  5. 认真做副业第6天,收入37810
  6. Android 系统自带时间选择控件
  7. 在ftp服务器创建文件的命令,ftp服务器创建文件夹命令
  8. Windows服务器下怎么升级PHP版本
  9. git本地仓库和远程仓库关联问题
  10. 优雅编程之这样处理系统,你就“正常”了