《顺序读写数据文件(怎样向文件读写字符)——例子》

//从键盘输入一些字符,逐个把他们送到磁盘上去,直到用户输入一个“#”为止。

/*
思路:用fgetc函数从键盘逐个输入字符,然后用fputc函数写到磁盘文件中即可.
*/

//源程序如下:

#include<stdio.h>
#include<stdlib.h>
int main()
{
//定义一个FILE类型的指针变量
FILE *fp;
char ch,filename[50];
printf("请输入文件名:");
scanf("%s",filename);
//打开输出文件并使fp指向该文件
if((fp=fopen(filename,"w"))==NULL)
{
//如果打开时出错,就输出打不开的信息
printf("无法打开此文件\n");
//如果打开失败,则终止程序
exit(0);
}
//用来接收最后输入的回车符
ch = getchar();
printf("请输入一个准备存储到磁盘的字符串(以#号结束);");
ch = getchar();
while(ch!='#')
{
//想磁盘文件输出一个字符
fputc(ch,fp);
//将输出的字符显示在屏幕上
putchar(ch);
//再接收从键盘输入的一个字符
ch = getchar();
}
//关闭文件
fclose(fp);
//想屏幕输出一个换行符
putchar(10);
return 0;
}

 

注意:第一遍运行过程中出现了<Run-Time Check Failure #2-Stack around the variable 'filename' was corrupted>这样的错误,检查后发现是因为

在定义文件名char filename[10]数组时 数组长度过小导致 (因为我在输入时,输入的事“f:\\FILE_1\\file.txt”此时已经超过了文件名数组的长度)。

转载于:https://www.cnblogs.com/sun-/p/4809585.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值