C语言文件的读取和写入不成功是什么原因啊。

weixin_38194305 2017-05-10 04:42:36
感觉是最基本的代码了 但是跑程序之后 to 文件里面并没有写入成功
#include<string.h>
#include<stdio.h>
#include <stdlib.h>

int main()
{
FILE *from, *to;
char temp[100];
to = fopen("1.txt", "r");
from = fopen("2.txt", "w");
perror("1.txt");
perror("2.txt");

while (fgets(temp, 100, from) != NULL)
{
fputs(temp, to);
fflush(to);

}

fclose(from);
fclose(to);
system("pause");
return 0;

}
...全文
1931 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
自信男孩 2017-05-10
  • 打赏
  • 举报
回复
如果要读的文件以"w"打开,那么文件就会被截断,即源文件的内容就为空。即无法从源文件里读到数据。while循环就不会执行。 要写的文件以”r"形式打开,那么它是没有写权限的。
自信男孩 2017-05-10
  • 打赏
  • 举报
回复
引用 1 楼 zhao4zhong1 的回复:
to = fopen("1.txt", "w"); from = fopen("2.txt", "r");
一语中第,要写的文件的以读的形式打开,会有问题,要读的以写的形式打开没问题
赵4老师 2017-05-10
  • 打赏
  • 举报
回复
吃饭用碗,拉屎用马桶。
赵4老师 2017-05-10
  • 打赏
  • 举报
回复
to = fopen("1.txt", "w"); from = fopen("2.txt", "r");

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧