题为c程序设计(第五版)谭浩强 例10.1
前言
这篇博客,让我们一起学习顺序读写数据文件。
什么是顺序读写呢?顺序读写就是对文件读写数据的顺序和数据在文件中的物理顺序是一致的。顺序读写需要用到库函数来实现。
函数名 | 调用形式 | 功能 | 返回值 |
---|---|---|---|
fgetc | fgetc(fp) | 从fp指向的文件读入一个字符 | 读成功,带回所读的字符,失败则返回文件结束标志EOF(即-1) |
fputc | fputc(ch,fp) | 把字符ch写到文件指针变量fp所指向的文件中 | 输出成功,返回值就是输出的字符;输出失败则返回EOF(即-1) |
一、题目复现
二、实现步骤
1.思路分析
用fgetc函数从键盘逐个输入字符,然后用fputc函数写到磁盘文件中即可。
2.具体实现
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
int main()
{
FILE* fp; //定义文件指针fp
char ch, filename[10];
printf("请输入所用的文件名:");
scanf("%s", filename); //输入文件名
getchar(); //用来消化最后输入的回车符
if ((fp = fopen(filename, "w")) == NULL) //打开输出文件并使fp指向此文件
{
printf("cannot open file\n"); //如果打开出错就输出“打不开”
exit(0); //终止程序
}
printf("请输入一个准备存储到磁盘的字符串(以#结束):");
ch = getchar();
while (ch != '#')
{
fputc(ch, fp);
putchar(ch);
ch = getchar();
}
fclose(fp);
putchar(10);
return 0;
}
实验结果(示例):
总结
顺序读写文件是c语言中最基础的一种文件读写方式,思路清晰,理解简单,那么我们现在实现的是一个字符一个字符的读取,如果我想一次性读取一个字符串怎么办呢?那么我将在我的下一篇博客中用实际例子为大家讲解,如何向文件读写一个字符串,小伙伴们可以关注一下哈!😬😬