C语言写文件到txt里有屯字,C语言10 文件.ppt

第十章 文件

C文件概述

文件类型指针

文件的打开与关闭

文件的读写

文件的定位

出错的检测

赂恰滔氢戳骏市蔫盒少郴害篆汤看拴掳驮泅戈呕压琐憨波褪队敛紫爸戏仅C语言10 文件C语言10 文件

10.1 C文件概述

文件:存储在外部介质上数据的集合,是操作系统数据管理的单位

文件分类

按文件的逻辑结构:

记录文件:由具有一定结构的记录组成(定长和不定长)

流式文件:由一个个字符(字节)数据顺序组成

按存储介质:

普通文件:存储介质文件(磁盘、磁带等)

设备文件:非存储介质(键盘、显示器、打印机等)

按数据的组织形式:

文本文件: ASCII文件,每个字节存放一个字符的ASCII码

二进制文件:数据按其在内存中的存储形式原样存放

配柿哇逢区血轰秋浪冷壶小刨协嘎姓涕鳞轴简衰峻屯字途腥坷磊赃挟啸欠C语言10 文件C语言10 文件

文本文件特点:

存储量大、速度慢、便于对字符操作

二进制文件特点:

存储量小、速度快、便于存放中间结果

文件特点:

醇啃稽愉嫡贝祈骇却眶排放绢碳颖曹颅铀次疥俩豁即暴梨刨梳隋待邓贺邀C语言10 文件C语言10 文件

缓冲文件系统:高级文件系统,系统自动为正在使用的文件开辟内存缓冲区

非缓冲文件系统:低级文件系统,由用户在程序中为每个文件设定缓冲区

文件处理方法

呐褪侦脂于滤绰朝馅赢伤蛛怜将襟酿嚎荐纶顿吻庭狗辱誉瘦蒜渐历瓣吗稀C语言10 文件C语言10 文件

文件结构体FILE

缓冲文件系统为每个正使用的文件在内存开辟文件信息区

文件信息用系统定义的名为FILE的结构体描述

FILE定义在stdio.h中

typedef struct

{ int _fd; //文件号

int _cleft; //缓冲区中剩下的字符数

int _mode; //文件操作方式

char *_next; //文件当前读写位置

char *_buff; //文件缓冲区位置

}FILE;

10.2 文件类型指针

弛戈北吮录慷枉瞥抛咐阁墩赘醚饶调蠕众别啼嘉菲吉较快贵伤系螺详税僻C语言10 文件C语言10 文件

指针变量说明: FILE *fp;

用法:

文件打开时,系统自动建立文件结构体,并把指向它的指针返回来,程序通过这个指针获得文件信息,访问文件

文件关闭后,它的文件结构体被释放

文件类型指针

短取助夺蚁颁髓辊政奠蹈话真镀铲悲垣柜每派烧碍璃陪眶砚遍睁妒捕翔渗C语言10 文件C语言10 文件

C文件操作用库函数实现,包含在stdio.h

文件使用方式:打开文件-->文件读/写-->关闭文件

系统自动打开和关闭三个标准文件:

标准输入------键盘 stdin

标准输出------显示器 stdout

标准出错输出-----显示器 stderr

打开文件fopen

函数原型: FILE *fopen(char *name,char *mode)

功能:按指定方式打开文件

返值:正常打开,为指向文件结构体的指针;打开失败,为NULL

要打开的文件名

使用文件方式

例 文件打开与测试

FILE *fp;

fp=fopen(“aa.c”,“w”);

if(fp==NULL)

{ printf(“File open error!\n”);

exit(0);

}

例 FILE *fp;

fp= fopen (“c:\\fengyi\\bkc\\test.dat”,”r”);

例 FILE *fp;

char *filename=“c:\\fengyi\\bkc\\test.dat”

fp= fopen(filename,”r”);

10.3 文件的打开与关闭

买兄呐磊裸蹲汞舔杆鞍忱诞防衰航婶炸首蝴贰枚箍嚷盛檀绷翁熏瓦坎搪警C语言10 文件C语言10 文件

作用:使文件指针变量与文件“脱钩”,释放文件结构体和文件指针

函数原型:int fclose(FILE *fp)

功能:关闭fp指向的文件

返值:正常关闭为0;出错时,非0

文件打开时返回的文件类型指针

不关闭文件可能会丢失数据

文件关闭fclose

补石卯确湖蓑踌念蔬讥患堤河沿渠画药好绦闹入宠消兵抵磨本议挡扎肌屎C语言10 文件C语言10 文件

字符I/O:fputc与fgetc

fputc

函数原型:int fputc(int c, FILE *fp)

功能:把一字节代码c写入fp指向的文件中

返值:正常,返回c;出错,为EOF

fgetc

函数原型:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/266179.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java中volatile的使用方式

2019独角兽企业重金招聘Python工程师标准>>> 转载地址: http://www.cnblogs.com/aigongsi/archive/2012/04/01/2429166.html 转载于:https://my.oschina.net/wangfree/blog/122664

python socketio_flask-socketio实现WebSocket的方法

【flask-socektio】之前不知道在哪个场合下提到过如何从web后台向前台推送消息。听闻了反向ajax技术这种模式之后,大呼神奇,试了一下之后发现也确实可以用。不过,反向ajax的代价也很明显,只要客户端还和服务端要有信息交互&#x…

linux文件编程(1)—— open、write、read、lseek、阻塞问题(ps文件操作/文件描述符/重定向原理/缓冲区/标准错误)

参考:linux文件编程(1)—— 常用API之open、write、read、lseek 作者:丶PURSUING 发布时间: 2021-04-08 22:19:28 网址:https://blog.csdn.net/weixin_44742824/article/details/115209134 【Linux】文件操…

最大流自用模板(例题:HDU1532)

三种模板:Edmonds_Karp,Dinic,SAP 例题: Drainage Ditches(HDU1532) Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 22365 Accepted Sub…

安卓手机python数据可视化_python 数据可视化

# -*- coding:utf-8 -*-# 异常值处理import pandas as pdaimport numpy as npyimport matplotlibmatplotlib.use(Agg)import matplotlib.pyplot as pylimport iodef index(data):# 输出结果必须为字典outputoutput {}# data pda.read_excel("D:/taobao2.xls")data …

$_SERVER

PHP $_SERVER 变量 $_SERVER 是一个包含诸如头信息(header)、路径(path)和脚本位置(script locations)的数组。它是 PHP 中一个超级全局变量,我们可以在 PHP 程序的任何地方直接访问它。 $_SERV…

linux文件编程(4)—— 用ANSIC标准C库函数进行文件编程:fopen、fread、fwrite、fseek

参考:linux文件编程(5)—— 用ANSIC标准中的C库函数进行文件编程 作者:丶PURSUING 发布时间: 2021-04-11 11:58:25 网址:https://blog.csdn.net/weixin_44742824/article/details/115209680 部分参照&#…

swig封装 c语言函数到python库,python swig 调用C/C++接口

转载:https://www.cnblogs.com/dda9/p/8612068.html当你觉得python慢的时候,当你的c/c代码难以用在python上的时候,你可能会注意这篇文章。swig是一个可以把c/c代码封装为python库的工具。(本文封装为python3的库)文章结构整体看封装只使用py…

Java学习---面试基础知识点总结

Java中sleep和wait的区别① 这两个方法来自不同的类分别是,sleep来自Thread类,和wait来自Object类。sleep是Thread的静态类方法,谁调用的谁去睡觉,即使在a线程里调用b的sleep方法,实际上还是a去睡觉,要让b线…

python中的语言特性_python自测——语言特性

语言特性1.谈谈对 Python 和其他语言的区别答:Python 是一门语法简洁优美,功能强大无比,应用领域非常广泛,具有强大完备的第三方库,他是一门强类型的可移植、可扩展,可嵌入的解释型编程语言,属于动态语言。拿 C 语言和 Python 比&…

使用NPOI和委托做EXCEL导出

首先,在用NPOI导出时,学习了邀月这篇文章NPOI根据Excel模板生成原生的Excel文件实例,在这里先行谢过了。 本篇文章在邀月的基本上,做了一些小的改动,加上委托的机制。因为在做导出时,加载模板,下…

全国计算机等级考试题库二级C操作题100套(第63套)

第63套&#xff1a; 给定程序中&#xff0c;函数fun的功能是&#xff1a;有NN矩阵&#xff0c;根据给定的m&#xff08;m<N&#xff09;值&#xff0c;将每行元素中的值均右移m个位置&#xff0c;左边置为0。例如&#xff0c;N3&#xff0c;m2&#xff0c;有下列矩阵 1 2 3…

android 放大镜功能,简单实现Android放大镜效果

利用之前学过的图形图像绘画技术和图片添加特效技术&#xff0c;我们来实现一个Android放大镜的简单应用。最终效果如图具体实现:用来显示自定义的绘图类的布局文件res/layout/main.xml:xmlns:tools"http://schemas.android.com/tools"android:layout_width"fil…

python直方图拟合曲线_在直方图python中拟合非标准化高斯

我有一个暗图像(原始格式)&#xff0c;并绘制图像的图像和分布 . 正如您所看到的那样&#xff0c;在16处有一个高峰&#xff0c;请忽略它 . 我想通过这个直方图拟合高斯曲线 . 我已经使用这种方法来适应&#xff1a;Un-normalized Gaussian curve on histogram . 然而;我的高斯…

nodejs之express入门

首先安装nodejs&#xff0c;官网下载安装包直接安装&#xff0c; 由于node自带npm&#xff0c;所以npm命令直接即可使用 打开cmd&#xff0c;使用npm install -g express-generator安装express 然后express -e webapp 回车 一个express项目就生成了&#xff0c;简单的不能再简单…

全国计算机等级考试题库二级C操作题100套(第64套)

第64套&#xff1a; 给定程序中&#xff0c;函数fun的功能是&#xff1a;将a所指35矩阵中第k列的元素左移到第0 列&#xff0c;第k列以后的每列元素行依次左移&#xff0c;原来左边的各列依次绕到右边。 例如&#xff0c;有下列矩阵&#xff1a; 1 2 3 4 5 1 2 3 4 5 1 2 3 4 …

android 音乐播放器的状态栏通知,Android仿虾米音乐播放器之通知栏notification解析...

通知栏notification是Android中一个很重要的组件&#xff0c;可以在顶部状态栏中存在&#xff0c;用户也可以通过此来操作应用&#xff0c;在Android中只有3.0以上的版本才加入了notification的按钮点击功能。先看一下仿虾米写出来的通知的效果这是一个自定义的notification&am…

mysql 查询语句_SQL语言mysql基础查询语句

单表查询、条件查询、查询并排序、限制结果查询、查询并排名、分组聚合查询、-- DQL操作&#xff0c;数据基本查询语言使用----------------------------------------------------------------------------------------------- -- 创建数据表-- 注释&#xff1a;员工编号&#…

Android NDK学习(七):NDK 编译支持 C++特有的库

如果你的C代码中出现了很多C特有的库&#xff0c;例如<iostream>,<list>等&#xff0c;那么你还需要在jni的文件夹下添加一个Application.mk文件&#xff0c;文件内容为&#xff1a; APP_STL : stlport_static APP_STL : gnustl_static 示例 Application.mk &#…

android glide本地图片,Glide下载图片并保存到本地

活不多说 上代码:Observable.create(new ObservableOnSubscribe() {Overridepublic void subscribe(ObservableEmitter e) throws Exception {//通过gilde下载得到file文件,这里需要注意android.permission.INTERNET权限e.onNext(Glide.with(mContext).load(imagePathList.get(…