【发布时间】:2015-02-05 02:45:15
【问题描述】:
现在,我有一个 main 函数,看起来像(argv[2] 是我要循环遍历的文件,从命令行)
int main(int argc, char * argv[]) {
FILE *thisfile;
thisfile = fopen(argv[2], "r");
while ....
}
我希望最终能够遍历文件 argv[1] 的每一行,并查看是否有任何行包含一个字符串,即 argv[1]。我知道像 fgets 这样的 C 操作,但我不知道如何使用它们。所以现在,输出文件的每一行就足够了,但是之后我想看看每一行是否包含一个字符串。我对 C 很陌生,感谢任何帮助!
【问题讨论】:
-
先尝试一下。
-
您使用
while循环而不是for循环来执行此操作。 -
网络上肯定有数百个教程展示了如何循环读取文件。 SO 不是辅导服务。
-
为什么你认为文件名来自 argv 很重要?无论您从何处获得名称,您都以相同的方式读取文件。
-
我查看了有关堆栈溢出的多个其他问题,但它们并不是很有帮助。而且,它们都是伪代码,不是从 argv 读取的,这让人很困惑。除了从 argv 之外,我不知道如何获取文件名。还有remyabel,我确实尝试过,但没有成功,我不想发布无效的代码。