这个c程序为什么不能正常输出?

#include<stdio.h>charmybuffer[80];intmain(){FILE*pFile;pFile=fopen("example.txt","r+"... #include <stdio.h>
char mybuffer[80];
int main()
{
FILE * pFile;
pFile = fopen ("example.txt","r+");
if (pFile == NULL)
puts ("Error opening file\n");
else {
fputs ("test",pFile);
fgets (mybuffer,80,pFile);
puts (mybuffer);
fclose (pFile);
return 0;
}
}
展开
 我来答
格里编程办公技巧
科技发烧友

2021-04-17 · 编程、办公知识分享与学习
格里编程办公技巧
采纳数:434 获赞数:877

向TA提问 私信TA
展开全部

这个程序未输出主要有两个小问题:

  1. 主要问题是图片语句11写入文件后,文件指针在末尾是没有内容可以读取的,所以也就没有输出;解决方法是在写入语句后把文件指针返回到文件开头,使用rewind(pFile); 这个是主要问题;关于rewind函数的用法也可以查查百度百科,另外还有一个类似的函数fseek,这个函数主要用于写入结构体有固定大小的数据时使用;

  2. 次要问题,文件是r+模式打开,如果没有文件也是错误的,当然你自己也加了判断,也不算是个问题。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式