C语言 一个简单fgets()函数问题

#include<stdio.h>main(){intn=5;charstr[6];FILE*fp;fp=fopen("C:\ProgramFiles(x86)\MyCo... #include <stdio.h>
main()
{
int n=5;
char str[6];
FILE *fp;
fp=fopen("C:\Program Files (x86)\MyCode\file1.c","r");
fgets(str,n,fp);
fclose(fp);
}
编译没有错误,但是在VC++6.0运行提示错误,大致是Expression str!=NULL。请高手帮忙解答下。谢谢
file1.c不是这个文件。那你觉得这个fopen会出什么问题呢?我怎么知道是不是他的问题?
#include <stdio.h>
main()
{
FILE *fpin,*fpout;
char a[10];
fpin=fopen("C:\Program Files (x86)\MyCode\file1.c","r");
fpout=fopen("C:\Program Files (x86)\MyCode\file2.c","w");
fgets(a,9,fpin);
fputs(a,fpout);
fclose(fpin);
fclose(fpout);
getch();
}
在我电脑上编译也错误,我蛋都碎了。麻烦再帮忙看看,谢谢了。
展开
 我来答
亚南肖
2011-08-11 · TA获得超过1003个赞
知道答主
回答量:163
采纳率:0%
帮助的人:140万
展开全部
是路径写错了,路径里一定要用“\\”,因为‘\’是转义字符,两个'\'才最终表示一个'\'。
因为路径错了,所以fopen打开文件不成功,fp=NULL,再用fgets的话就出现了你说的Expression str!=NULL的错误。
建议每次用fopen之后都要判断文件打开是否成功,例如本题中
fp=fopen("C:\\Program Files (x86)\\MyCode\\file1.c","r");
if(fp==NULL)
{
printf("can not open the file!\n");
return;
}
匿名用户
2011-08-09
展开全部
麻烦`采纳.··.··.·
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
文雅又清正丶小鲤鱼3017
2011-08-09 · TA获得超过1964个赞
知道答主
回答量:67
采纳率:0%
帮助的人:82.8万
展开全部
fopen函数运行好之后对fp判断一下是否为NULL,如果文件不存在或打开不成功,fp为NULL,后面自然就不对了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
羿烃Hy
2011-08-09 · TA获得超过145个赞
知道答主
回答量:240
采纳率:0%
帮助的人:230万
展开全部
弱地问一下,这个程序不会就是file1.c吧。
你这个程序如果都打开的话,估计读不到。

那你在open函数后面看一下,fpin和fout是不是都为NULL阿。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
七级狗
2011-08-09 · TA获得超过356个赞
知道答主
回答量:283
采纳率:0%
帮助的人:97.8万
展开全部
fopen("C:\Program Files (x86)\MyCode\file1.c","r");

应该是这样
fopen("C:\\Program Files (x86)\\MyCode\\file1.c","r");

需要有转义符。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
feicaiqiu
2011-08-09 · TA获得超过114个赞
知道答主
回答量:51
采纳率:0%
帮助的人:25.9万
展开全部
Solved the problem! I hadn't put my targetfile tracking .csv file into my debug directory. Thanks for the advice, i should put the file opening checking code into my program anyways!
这是一个外国人回答的 希望对你有帮助
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式