fget.c stream=!null断言错误,用VC++编的C程序

fget.cstream=!null断言错误,用VC++编的C程序#include<stdio.h>#include<stdlib.h>intmain(){printf(... fget.c stream=!null断言错误,用VC++编的C程序
#include <stdio.h>
#include<stdlib.h>
int main()
{
printf("Hello World!\n");

FILE *fp;
int ch;
if((fp=fopen("abc.txt","r"))!=NULL)
printf("file= ");
while((ch=fgetc(fp))!=EOF)
putchar(ch);
fclose(fp);
fp=NULL;
return 0;
}
编译运行都能通过,但是VC会出现一个框,提示fgetc.c line 41 stream=!null 怎么解决这个错误呢
展开
 我来答
bhtzu
2014-07-03 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8088
采纳率:85%
帮助的人:4253万
展开全部
#include <stdio.h>
#include<stdlib.h>
int main()
{
printf("Hello World!\n");

FILE *fp;
int ch;
if((fp=fopen("abc.txt","r"))!=NULL)
{//加上大括号,这样没有文件就不会读取,就不报错了
printf("file= ");
while((ch=fgetc(fp))!=EOF)
putchar(ch);
fclose(fp);
fp=NULL;
}
return 0;
}

报错是因为没找到文件或者没有正确打开。调整一下代码,确保打开判断的逻辑正确就可以了。

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

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式