Brauche Hilfe für mein Prog

DeChecka

Erfahrenes Mitglied
Hi!
Zuerst kurz das Wichtigste:
Dev-C++ als Kompiler!

So, ich habe hier folgenden Programmschnipsel für euch :) :
Code:
      std::cout << "Bitte geben Sie einen Teamnamen ein!" << std::endl;
      std::cin.get(chartn,sizeof(chartn));
      std::cin.ignore();
      std::cout << "\nTeamname: " << chartn << std::endl;
      chartn2=chartn;
      strcat(chartn, ".txt");
      std::ofstream fout(chartn);
      fout << chartn2 << ":";
      fout.close();
      std::ofstream teammenu("Teams.txt");
      std::ifstream teammenu1("Teams.txt");
      while(teammenu1)
      {
       for(i=0; i<101; ++i)
       {
        getline(teammenu1, buffer[i]);
       }
      }
      teammenu1.close();
      for(i=0; i<101; ++i)
      {
       if(buffer[i]!=chartn2)
           continue;
       if(buffer[i]==chartn2)
           break;
       if(i=100)
       {
        std::ofstream teammenu2("Teams.txt", std::ios_base::app);
        teammenu2 << chartn2;
        teammenu2.close();
       }
      }

Das Programm fordert den User zu einer Eingabe von einem Teamnamen auf. Dann soll es prüfen, ob dieser Teamname schon in der Datei Teams.txt gespeichert ist. Falls ja, soll er nicht nochmal in die Datei hinzugefügt werden.
Leider stürzt das Programm sofort nach Eingabe des Teamnamens ab...
Es erscheint auf dem Bildschirm dann sogar die Fehlermeldung mit der Option "Senden" (an Microsoft), die kennt ihr ja alle. Also damit will ich nur sagen, dass das Programm nicht einfach beendet, sondern 'nen richtigen Fehler hat.
Ich weiß nicht, an was es liegt, ich krieg's nicht raus...
Allerdings muss es wohl an den for-Schleifen liegen, denn ohne die geht es.
Hat jemand 'ne bessere Idee, wie ich mein Programm realisieren kann. Denn mir scheint, dass alles bisschen umständlich so*g. Vor allem funktioniert es halt net...

Freue mich über Hilfe!

Danke schonmal im Vorraus!

MfG
DeChecka
 
moin


Was für String?
Von der string-Klasse?
Oder char[]?

Und er stürzt sofort nach Eingabe des Teamnamen ab? Und dann soll es an der Schleife liegen?!

Außerdem öffnest du Teams.txt zweimal.
Mach lieber ein std::fstream teammenu("Teams.txt", std::ios_base::in | std::ios_base::eek:ut);


mfg
umbrasaxum
 
Also buffer und chartn2 sind strings von der stringklasse, ja.

Und er stürzt sofort nach Eingabe des Teamnamen ab? Und dann soll es an der Schleife liegen?!

Mhh, er zeigt nach Eingabe des Teamnamens in der nächsten Zeile nochmal den blinkenden Cursor ("_") an...
Kurz darauf stürzt er aber ab...

MfG
DeChecka
 
moin


Wenn die Variabeln vom Typ string sind kannst/darfst du sie nicht mit dem mit dem cin... Zeugs benutzen.

Warum das bei dir nicht zu einem Fehler führt weiss ich auch nicht, aber eigentlich sollte das zu einem Compilerfehler führen.


mfg
umbrasaxum
 
moin


Achsoo
Hatte ich oben überlesen, das nur die anderen beiden vonner string-Klasse sind.

Was meinst du denn mit "vom Typ char"?
Poste mal den Teil vom Code wo du die Variabeln erstellst.


mfg
umbrasaxum
 
Zurück