Anfängerfrage!
-
Hallo
Ich hab folgendes problem...
ich hab ein programm das in einem file nach einem
namen suchen sollte und dan auch diese ganze zeile ausgeben soll
wo dieser name gefunden wurde. Hab auch schon ein bisschen damit experementiert aber leider nur mit einzelne buchstaben geschafft!
Ich hoffe ihr könnt mir helfen!while((c=fgetc(fp))!=EOF) { for(int i=0;i<=zeile[101];i++) { zeile[i]= fgetc(fp); if(zeile[i]==buchstabe) { b++; } } } cout << buchstabe << " = "<< b << endl; fclose(fp);
-
da gibts ne Funktion strstr() in der string.h
die würd ich nehmen..
-
1. Du mischt C und C++. Solltest dich entscheiden welche Sprache du verwenden willst.
2. Wenn du in einer Zeile einen bestimmten Substring suchen willst dann solltest du das File auch zeilenweise einlesen und den string dann auch in dieser Zeile suchen.
Da wir hier im ANSI C -Forum sind: sieh dir mal die folgenden funktionen anchar *fgets(char *s, int n, FILE *stream); // zeile lesen aus file char *strstr(const char *s1, const char *s2); // substring suchen
Kurt
-
Danke sehr^^
doch leider hab ich keine ahnung wie sie zu verwenden
hab das mal so versucht:car zeile[101]; char suche; cout << endl; cout << "Name der gesucht werden soll: "; cin >> suche; FILE *fp=fopen("test.txt", "r"); if (fp==NULL) { cout << "Datei nicht gefunden" <<endl; exit(1); } if (strstr(zeile, suche)) { cout <<"Test" << endl; }
-
Also dein größtes Problem ist wohl, dass du einfach nichts aus der Datei liest. Wie soll strstr() dann was finden?
Hint: fgets()