惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
有赞技术团队
有赞技术团队
博客园 - 【当耐特】
云风的 BLOG
云风的 BLOG
Martin Fowler
Martin Fowler
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
量子位
Engineering at Meta
Engineering at Meta
博客园 - 叶小钗
T
The Blog of Author Tim Ferriss
Recent Announcements
Recent Announcements
罗磊的独立博客
B
Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
U
Unit 42
Microsoft Azure Blog
Microsoft Azure Blog
D
Docker
N
Netflix TechBlog - Medium
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
B
Blog RSS Feed
I
InfoQ
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
V
V2EX

博客园 - 老保

不要把MASM32开发环境和MASM汇编器版本搞混了 python获取当前脚本所在目录 python迭代器 mysql 随记 c程序设计语言(第二版) 阅读笔记 九 unix系统IO c程序设计语言(第二版) 阅读笔记 七 结构和联合 c程序设计语言(第二版) 阅读笔记 六 指针 c程序设计语言(第二版) 阅读笔记 五 变量作用域及变量声明和定义 c程序设计语言(第二版) 阅读笔记 四 函数定义域声明规则 c程序设计语言(第二版) 阅读笔记 三 ANSI C及较早版本函数声明 c程序设计语言(第二版) 阅读笔记 二 变量声明 extern c程序设计语言(第二版) 阅读笔记 一 特点和简介 XMLHttpRequest和W3C DOM备忘 socket 常用的数据结构备忘 笔试题目 NHibernate Configuration和Sessionfactory c# 学习笔记1 (枚举和结构类型和数组) js常用函数 一个很简洁 效果很好的js效果 - 老保 - 博客园
c程序设计语言(第二版) 阅读笔记 八 文件
老保 · 2009-11-03 · via 博客园 - 老保

  在读写一个文件之前,必须通过库函数fopen打开该文件。fopen用类似于x.c或y.c(文件名)这样的外部名与操作系统进行某些必要的连接和通信,并返回一个随后可以用于文件读写操作的指针。

  该指针称为文件指针,它指向一个包含文件信息的结构,这些信息包括:缓冲区的位置、缓冲区当前字符的位置、文件的读或写状态、是否出错或是否已经到达文件结尾等等。用户不用关心这些细节,因为<stdio.h>中已经定义了一个包含这些信息的结构FILE。在程序中只需要按下列方式声明一个文件指针即可:

  FILE *fp;

  FILE *fopen(char *name, char *mode);

  fclose执行和fopen相反的操作,它断开由fopen函数建立的文件指针和外部名之间的连接,并释放文件指针以供其他文件使用。因为大多数操作系统都限制了一个程序可以同时打开的文件数,所以,当文件指针不再需要时就应该释放,这是一个好的编程习惯,就像我们在cat程序中所做的那样。对输出文件执行fclose还有另外一个原因:它将把缓冲区中由putc函数正在收集的输出写到文件中。当程序正常终止时,程序会自动为每个打开的文件调用fclose函数。(如果不需要使用stdin与stdout,可以把它们关闭掉。也可以通过函数freopen重新指定它们。)