一个c语言难题,急求解答!
编写一个程序,它在一个文本文件中查找用户指定的字符串,如果找到,则指出位于那些行中。列如,如果在一个c源代码文件中查找“printf( )”,则程序应列出包含printf( )的所有行。
[解决办法]
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define BUFFER_ZISE 1024
int main()
{
char line_buffer[BUFFER_ZISE];
FILE *file;
char part[] = "test";
file = fopen("test.txt", "r");
if (NULL==file)
{
printf ("Open file fail.\n");
return -1;
}
char *find;
int line_num;
while (!feof(file))
{
++line_num;
fgets(line_buffer, BUFFER_ZISE, file);
find = strstr(line_buffer, part);
if (find!=NULL)
{
printf ("Line %d\n", line_num);
}
}
return 0;
}