Übungsaufgabe zu "cin.get(...)" verursacht Zugriffsfehler



  • Hallo,
    bin noch Anfänger und arbeite gerade ein Übungsbuch durch. In einer Aufgabe zu cin.get bekomm ich ständig einen Zugrifffehler.

    int main()
    {
       char buffer[80]
       cout << "Puffer eingabe: ";
       cin.get(buffer, 79);
       cout << "Puffer ausgabe: " << buffer;
       return 0;
    }
    

    Vorher hatte ich das selbe Programm aber statt Zeile 5 einfach:

    cin << buffer;
    

    Das läuft ohne Probleme

    Hat jemand eine Idee? Vielen Dank schon mal!



  • Dein buffer ist nicht terminiert. Bei der Ausgabe läuft der Einfügeoperator daher über das Ende hinaus, auf der Suche nach einer 0 ... wahrscheinlich haut ihn das irgendwann um. Muss aber Spekulation bleiben, denn das was du gepostet hast hat Abschreibefehler und kann nicht das richtige Programm sein, was das Problem zeigt.



  • Richtig, das ist nicht aus meinem Programm kopiert, weil der keinen Internetzugang hat (und für die Fehler bitte ich um Entschuldigung)

    Aber die terminierung hatte ich auch schon versucht, hat auch nichts gebracht.

    Allerdings lief es jetzt, wie ich den Quelltext in ein neues Projekt kopiert habe. Die Fehlerursache bleibt mir aber weiterhin unbekannt.

    Hier der Orginal-Quelltext:

    #include <iostream.h>
    #include <conio.h>
    #include <vcl.h>
    
    int main()
    {
       char buffer[80];
       cout << "Geben Sie den String ein: ";
       cin.get(buffer, 79);
       cout << endl << "Inhalt des Puffers: " << buffer << endl;
       getch();
       return 0;
    }
    


  • ARCon schrieb:

    ...
    Allerdings lief es jetzt, wie ich den Quelltext in ein neues Projekt kopiert habe. Die Fehlerursache bleibt mir aber weiterhin unbekannt.

    Dazu sag ich nur: Borland

    Wenn was nicht funktioniert in nem kurzen Prograemmchen, dann einfach neues
    Projekt machen, Sourcecode reinkopieren und uebersetzen.

    Manchmal hilft es auch, wenn de einfach mal ne Leerzeile mehr in dein Programm
    machst oder mal eine am Ende loeschst.

    Sowas hab ich auch schon oft gehabt.

    mfg
    v R



  • Okay danke, war sowieso nicht ein so wichtiges Beispiel (Lerneffekt = 0), aber hatte mich halt interessiert.

    Vielen dank (und bis Dienstag v R)!


Anmelden zum Antworten