C:即使指定结束,While 循环也没有结束

私服

我的问题陈述是这样的,我运行命令并将命令的输出保存在缓冲区中。我的 while 循环在输出中查找特定字符串,如果该字符串存在,则运行所需的函数。

为了结束 while 循环,我已经提到了 feof,在 while 循环中但循环不起作用!

这是代码的快照,我想以优化的方式结束 while 循环!

FILE *fp = popen("ls","r");
char store[128];

while((fgets(store,sizeof store, fp)!=NULL) || (feof(fp))){
    if(strcasestr(buffer,"abc")){
        printf("\nSuccess");
        some_other_function();
    }
}
pclose(fp);
}
毫米

循环条件应该是:

while( fgets(store,sizeof store, fp) != NULL )

此时没有理由也检查 feof。如果到达文件末尾但读取了一些字符,那么您确实希望处理该字符串。

您可以feof在循环后检查以确定输入是否由于读取错误或文件结尾而失败。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

循环没有结束

来自分类Dev

没有结束的循环

来自分类Dev

C#while循环没有结束

来自分类Dev

osx-touches开始没有结束也没有取消

来自分类Dev

流没有结束

来自分类Dev

为什么在评估函数返回的变量时,“ while”循环没有结束?

来自分类Dev

Vim折叠,没有结束标记

来自分类Dev

如果没有结束则阻止

来自分类Dev

登出后vmtoolsd没有结束

来自分类Dev

我的程序没有结束

来自分类Dev

读取的mpi文件没有结束

来自分类Dev

为什么还原没有结束?

来自分类Dev

设置事件的高度没有结束

来自分类Dev

Docker 处理没有结束的进程?

来自分类Dev

Java程序没有结束

来自分类Dev

MySQL 删除查询没有结束

来自分类Dev

为什么我的循环没有结束有点困惑

来自分类Dev

如何防止旋转直到AsyncTask没有结束

来自分类Dev

从System.In读取行而没有结束符

来自分类Dev

PHP RegEx-没有结束定界符?

来自分类Dev

如何告诉javadoc我的句号没有结束

来自分类Dev

Android Wear HorizontalScrollView没有结束标记

来自分类Dev

程序在解析“退出”后没有结束

来自分类Dev

错误的替换:heredoc / EOF中没有结束的“`”

来自分类Dev

python socket(TCP)程序没有结束

来自分类Dev

MPLab 模拟器 PIC16 汇编器无限循环 - 程序没有结束

来自分类Dev

“如果没有结束则阻止”或“没有下一个阻止”

来自分类Dev

即使GameScene的Update方法中的游戏还没有结束,我也会收到“ You Lose”

来自分类Dev

与Hue一起创建没有结束日期的Oozie协调员