当前位置: 首页 > 文档资料 > C 标准库 中文版 >

FILE *fopen(const char *filename, const char *mode)

优质
小牛编辑
134浏览
2023-12-01

描述 (Description)

C库函数FILE *fopen(const char *filename, const char *mode)使用给定mode打开filename指向的文件名。

声明 (Declaration)

以下是fopen()函数的声明。

FILE *fopen(const char *filename, const char *mode)

参数 (Parameters)

  • filename - 这是包含要打开的文件名的C字符串。

  • mode - 这是包含文件访问模式的C字符串。 它包括 -

Sr.No.模式和说明
1

"r"

打开文件进行阅读。 该文件必须存在。

2

"w"

创建一个用于写入的空文件。 如果已存在具有相同名称的文件,则会删除其内容,并将该文件视为新的空文件。

3

"a"

附加到文件。 编写操作,在文件末尾附加数据。 如果文件不存在,则创建该文件。

4

"r+"

打开文件以更新读取和写入。 该文件必须存在。

5

"w+"

为读取和写入创建一个空文件。

6

"a+"

打开文件以进行阅读和追加。

返回值 (Return Value)

此函数返回FILE指针。 否则,返回NULL并设置全局变量errno以指示错误。

例子 (Example)

以下示例显示了fopen()函数的用法。

#include <stdio.h>
#include <stdlib.h>
int main () {
   FILE * fp;
   fp = fopen ("file.txt", "w+");
   fprintf(fp, "%s %s %s %d", "We", "are", "in", 2012);
   fclose(fp);
   return(0);
}

让我们编译并运行上面的程序,它将创建一个带有以下内容的文件file.txt -

We are in 2012

现在让我们使用以下程序查看上述文件的内容 -

#include <stdio.h>
int main () {
   FILE *fp;
   int c;
   fp = fopen("file.txt","r");
   while(1) {
      c = fgetc(fp);
      if( feof(fp) ) { 
         break ;
      }
      printf("%c", c);
   }
   fclose(fp);
   return(0);
}

让我们编译并运行上述程序以产生以下结果 -

We are in 2012