Finns det någon här som vet hur jag kan söka efter en viss sträng och få ut det radnummer som strängen finns på?
T.ex. Ordet 'tiger' finns på rad 2, 6, 14, ..., 33.
Slut på filen.
Kod: Markera allt
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, char *argv[])
{
FILE *fp;
char filnamn [50];
char searchString [60];
char findString [60];
printf("Välkommen till grep.\n\n");
printf("Ange \"quit\" som filnamn eller som ord för att avsluta.\n\n");
printf("Ge filnamn att leta i: ");
fscanf(fp, "%s",filnamn);
fp = fopen(filnamn,"r");
if(fp = NULL)
{
printf("Filen finns inte.\n");
}
if(fp == 'quit')
{
printf("Då avslutar vi väl då...");
return 0;
}
printf("Ge ordet att leta efter: ");
fscanf(fp,"%s",searchString);
if(searchString == 'quit')
{
printf("Då avslutar vi väl då...");
return 0;
}
findString = strstr(searchString,findString);
fclose(fp);
system("PAUSE");
return 0;
}
Hoppas någon är villig att ge mig en hand i dessa jultider.
Mvh. Joakim