C语言中判断文件到了尾部的办法!!!
while(!feof(fp)){}我用上面的函数进行循环,如果到了尾部就不执行,可是事实上还是进行了循环!!求解!!!...
while(!feof(fp))
{}
我用上面的函数进行循环,如果到了尾部就不执行,可是事实上还是进行了循环!!
求解!!! 展开
{}
我用上面的函数进行循环,如果到了尾部就不执行,可是事实上还是进行了循环!!
求解!!! 展开
3个回答
展开全部
fp是你读过的文件的那个文件的位置,有时候这个就不行,用下面这个
while(fgets(buf,100,fp))
然后再进行以后的程序
while(fgets(buf,100,fp))
然后再进行以后的程序
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不知道你循环体中是什么,fp要有变化的
追问
我的循环是将文件的内容读取出来到一个结构体上
而且我的文件开始的时候就是一个新建的txt文件,无论执行什么都应该不会进入循环
追答
int fefo(FILE* stream) 这个函数的返回值是这样的:若文件指针stream到了文件尾则返回非零值,否则返回零。
如果你文件有内容,刚开始也不是文件尾,那么就是返回非零值,你再取反(!feof(fp))就是零,所以不进入循环;
如果你文件没有内容,若已经到了文件尾,那么就恰好相反,就会进入循环。
我猜测你是不是文件没有内容啊。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
就是这个函数 你用错了
追问
可以解释下怎么错了么?
我的文件是新建的,里面什么内容都没有
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询