Woodstock Geschrieben 9. Oktober 2001 Geschrieben 9. Oktober 2001 Hi, also ich habe da mal wieder ein total dummes Problem, denke ich, und ein Brett vor'm Kopf, aber ich komme einfach nicht weiter. Ich will aus der Datei heraus Zeichenweise einlesen, solange bis ein Leerzeichen kommt, und will das gelesene in einem Array speichern, und dieses dann mitetwas vergleichen. Sieht bei mir so aus: fz = fopen ("c:\\blablabla.txt", "r"); while ((c = fgetc (fz)) != EOF); { while (c != ' ') { buffer1[pos] = c; pos++; } buffer1[pos] = '\0' _strlwr(buffer1); . . . } Er bleibt jetzt immer in der inneren while Schleife hängen, und ich weiß nicht wieso, und kann es nicht ändern. Habe es auch schon mit anderen Schleifen probiert, aber es klappt einfach nicht. Liegt es an der Typkonvertierung, und wenn ja, wie kann ich das ändern? Bine
capitanx Geschrieben 9. Oktober 2001 Geschrieben 9. Oktober 2001 Hi, <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR> while ((c = fgetc (fz)) != EOF); {
Hasi Geschrieben 9. Oktober 2001 Geschrieben 9. Oktober 2001 <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von Woodstock: <STRONG> while (c != ' ') { buffer1[pos] = c; pos++; } </STRONG>
Woodstock Geschrieben 9. Oktober 2001 Autor Geschrieben 9. Oktober 2001 So, ich habe es... #include "Sabine(1).h" void main() { FILE *fz; char **DA = NULL; int scnt = 0; char Eingabe[2]; char c = 1; char buffer1[100] = {NULL}; int pos = 0; int Fehler = 2; cin >> Eingabe; _strlwr (Eingabe); fz = fopen ("c:\\blablabla.txt", "r"); while (c != EOF) { c = fgetc (fz); if (c == ' ' || c == ',') { _strlwr(buffer1); if(strstr (buffer1, Eingabe)) { Fehler = 0; break; } else Fehler = 1; pos = 0; } buffer1[pos] = c; pos++; buffer1[pos] = '\0'; } if (Fehler == 0) cout << "\nSuchbegriff gefunden!" /*<< Datei[j] */<< "\n\n"; } klappt jetzt so... thnx
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden