2024年6月15日发(作者:不春蕾)
C 文件操作函数
//----------------------------------------------------------------------------
--
宏 EXIT_SUCCESS 程序成功终止
宏 EXIT_FAILURE 程序非成功终止
//----------------------------------------------------------------------------
--
/----------------------------------------------------------
| 标准文件及与其相关联的文件指针 |
|----------------------------------------------------------|
| 标 准 文 件 文 件 指 针 一般使用的设备 |
| 标准输入 stdin 键盘 |
| 标准输出 stdout 显示器 |
| 标准错误输出 stderr 显示器 |
----------------------------------------------------------/
//----------------------------------------------------------------------------
--
FILE * fp;
char fname[33] = "文件名";
if((fp = fopen(fname, "r")) != NULL) // 如果成功打开文件
{
}
fclose(fp); // 关闭fp指向的文件
//----------------------------------------------------------------------------
--
FILE * fp;
char arr[7] = "文件名";
fp = fopen(arr, "r");
if(fp != NULL)
fclose(fp); // 关闭fp指向的文件
ch = getc(stdin); // 相当于 getchar(); 一般 getchar() 是由 getc() 函数定义
的
putc(ch, stdout); // 相当于 putchar(ch); 一般 putchar() 是由 putc() 函数定义
的
//----------------------------------------------------------------------------
--
fopen() 接受两个参数,第一个是文件名字符串,第二个是打开方式
如果没有成功打开文件,fopen() 函数返回 NULL,
否则返回 FILE 指针
//--------------------------------------------------------------------//
// 表 13.1 fopen()函数的模式字符串 //
//--------------------------------------------------------------------//
// 模式字符串 | 意义 //
//--------------------------------------------------------------------//
// "r" | 打开一个文本文件,可以读取文件 //
//--------------------------------------------------------------------//
// "w" | 打开一个文本文件,可以写入文件,先将文件的长度截 //
// | 为零。如果该文件不存在则先创建之 //
//--------------------------------------------------------------------//
// "a" | 打开一个文本文件,可以写入文件,向已有文件的结尾 //
// | 追加内容,如果该文件不存在则先创建之 //
//--------------------------------------------------------------------//
// "r+" | 打开一个文本文件,可以进行更新(读取和写入) //
//--------------------------------------------------------------------//
// "w+" | 打开一个文本文件,可以进行更新(读取和写入),如 //
// | 果该文件存在则首先将其长度截为零;如果不存在则先 //
// | 创建之 //
//--------------------------------------------------------------------//
// "a+" | 打开一个文本文件,可以进行更新(读取和写入),向 //
// | 已有文件的尾部追加内容,如果该文件不存在则先创建 //
// | 之;可以读取整个文件,但写入时只能追加内容 //
//--------------------------------------------------------------------//
// "rb", "wb", | 与前面的模式相似,只是使用二进制模式而非文本模式 //
// "ab", "r+b", | 打开文件 //
// "w+b", "a+b", | //
// "rb+", "wb+", | //
// "ab+" | //
//--------------------------------------------------------------------//
fclose() 接受一个参数,函数关闭 fopen() 函数打开的文件
如果文件成功关闭,fclose() 返回值0,否则返回 EOF
磁盘已满、磁盘被移走或者I/O错误等等都会导致 fclose() 函数执行失败。
//----------------------------------------------------------------------------
--
fprintf() 与printf() 相似 但需要第一个 FILE 指针参数来指定要操作的文件
fprintf(stdout, "COS.n"); 等同与 printf("COS.n");
fscanf() 与scanf() 相似 但需要第一个 FILE 指针参数来指定要操作的文件
fcanf(stdin, "%s", words); 等同与 scanf("%s", words);
fgets() fgets(words, 5, stdin); 第一个是字符串数组名,第二个是字符串大小,
第三个是 FILE 指针
fputs() fputs(words, stdout); 第一个是字符串数组名,第二个是 FILE 指针
getc() getc(fp) 接受一个 FILE 指针参数,返回指向的 char 字符
putc() putc(ch, stdout) 接受2个参数,第一个参数是一个字符,第二个参数是
FILE 指针参数。
//----------------------------------------------------------------------------
2024年6月15日发(作者:不春蕾)
C 文件操作函数
//----------------------------------------------------------------------------
--
宏 EXIT_SUCCESS 程序成功终止
宏 EXIT_FAILURE 程序非成功终止
//----------------------------------------------------------------------------
--
/----------------------------------------------------------
| 标准文件及与其相关联的文件指针 |
|----------------------------------------------------------|
| 标 准 文 件 文 件 指 针 一般使用的设备 |
| 标准输入 stdin 键盘 |
| 标准输出 stdout 显示器 |
| 标准错误输出 stderr 显示器 |
----------------------------------------------------------/
//----------------------------------------------------------------------------
--
FILE * fp;
char fname[33] = "文件名";
if((fp = fopen(fname, "r")) != NULL) // 如果成功打开文件
{
}
fclose(fp); // 关闭fp指向的文件
//----------------------------------------------------------------------------
--
FILE * fp;
char arr[7] = "文件名";
fp = fopen(arr, "r");
if(fp != NULL)
fclose(fp); // 关闭fp指向的文件
ch = getc(stdin); // 相当于 getchar(); 一般 getchar() 是由 getc() 函数定义
的
putc(ch, stdout); // 相当于 putchar(ch); 一般 putchar() 是由 putc() 函数定义
的
//----------------------------------------------------------------------------
--
fopen() 接受两个参数,第一个是文件名字符串,第二个是打开方式
如果没有成功打开文件,fopen() 函数返回 NULL,
否则返回 FILE 指针
//--------------------------------------------------------------------//
// 表 13.1 fopen()函数的模式字符串 //
//--------------------------------------------------------------------//
// 模式字符串 | 意义 //
//--------------------------------------------------------------------//
// "r" | 打开一个文本文件,可以读取文件 //
//--------------------------------------------------------------------//
// "w" | 打开一个文本文件,可以写入文件,先将文件的长度截 //
// | 为零。如果该文件不存在则先创建之 //
//--------------------------------------------------------------------//
// "a" | 打开一个文本文件,可以写入文件,向已有文件的结尾 //
// | 追加内容,如果该文件不存在则先创建之 //
//--------------------------------------------------------------------//
// "r+" | 打开一个文本文件,可以进行更新(读取和写入) //
//--------------------------------------------------------------------//
// "w+" | 打开一个文本文件,可以进行更新(读取和写入),如 //
// | 果该文件存在则首先将其长度截为零;如果不存在则先 //
// | 创建之 //
//--------------------------------------------------------------------//
// "a+" | 打开一个文本文件,可以进行更新(读取和写入),向 //
// | 已有文件的尾部追加内容,如果该文件不存在则先创建 //
// | 之;可以读取整个文件,但写入时只能追加内容 //
//--------------------------------------------------------------------//
// "rb", "wb", | 与前面的模式相似,只是使用二进制模式而非文本模式 //
// "ab", "r+b", | 打开文件 //
// "w+b", "a+b", | //
// "rb+", "wb+", | //
// "ab+" | //
//--------------------------------------------------------------------//
fclose() 接受一个参数,函数关闭 fopen() 函数打开的文件
如果文件成功关闭,fclose() 返回值0,否则返回 EOF
磁盘已满、磁盘被移走或者I/O错误等等都会导致 fclose() 函数执行失败。
//----------------------------------------------------------------------------
--
fprintf() 与printf() 相似 但需要第一个 FILE 指针参数来指定要操作的文件
fprintf(stdout, "COS.n"); 等同与 printf("COS.n");
fscanf() 与scanf() 相似 但需要第一个 FILE 指针参数来指定要操作的文件
fcanf(stdin, "%s", words); 等同与 scanf("%s", words);
fgets() fgets(words, 5, stdin); 第一个是字符串数组名,第二个是字符串大小,
第三个是 FILE 指针
fputs() fputs(words, stdout); 第一个是字符串数组名,第二个是 FILE 指针
getc() getc(fp) 接受一个 FILE 指针参数,返回指向的 char 字符
putc() putc(ch, stdout) 接受2个参数,第一个参数是一个字符,第二个参数是
FILE 指针参数。
//----------------------------------------------------------------------------