Programmabsturz nach Variableneingabe

Schnelle objektorientierte, kompilierende Programmiersprache.
Antworten
Flizzberg
Beiträge: 3
Registriert: Sa Okt 20, 2012 1:53 pm

Programmabsturz nach Variableneingabe

Beitrag von Flizzberg » Sa Okt 20, 2012 1:55 pm

Hey Leute ich versuch zurzeit ein kleinen Lernprogramm für meine Englischvokablen zu schreiben.

Ich benutzte devcpp und Windows 7

Hier mal der Quellcode:

Code: Alles auswählen

#include <iostream>
using namespace std;
int main()
{
    int Anzahl;
    int Stelle=0;
    string eVokabeln[Stelle];
    string dVokabeln[Stelle];
    
    cout<<"Willkommen beim Englisch-Vokabeltraining! \n\n\n Wieviel Vokabeln moechten sie lernen?"<<endl;
    cout<<"Anzahl: "; 
    cin>>Anzahl;
    
    cout<<"Geben sie nun die englischen Vokabeln und ihre deutsche Uebersetzung ein: "<<endl;
    
    for (short Anzahlfor=0;Anzahlfor<=Anzahl;++Anzahlfor)
    
    {
              cout<<"englische Vokabel: "; cin>>eVokabeln[Stelle];
              cout<<"\ndeutsche Vokabel: "; cin>>dVokabeln[Stelle];
                                
                                Stelle++;                     
                      
        /*      cout<<Anzahl<<endl;                                  
              cout<<eVokabeln[0]<<endl;
              cout<<dVokabeln[0]<<endl;   */                               //Testausgabe
    }
    

}
Nach der ersten Eingabe der eVokabeln und dVokabeln schmiert das Prog ab.. kann mir jmd helfen? :?:

Edit by cloidnerux: code-tags, Titel angepasst, war "Kleine Englisch-Programm"

Benutzeravatar
cloidnerux
Moderator
Beiträge: 3123
Registriert: Fr Sep 26, 2008 4:37 pm
Wohnort: Ram (Gibts wirklich)

Re: Programmabsturz nach Variableneingabe

Beitrag von cloidnerux » Sa Okt 20, 2012 2:54 pm

Hi und Willkommen im Forum.
Nach der ersten Eingabe der eVokabeln und dVokabeln schmiert das Prog ab.. kann mir jmd helfen?
Was genau passiert?
Was gibst du ein, was kommt raus?

Aber ich kann dir schon mal sagen:

Code: Alles auswählen

 int Stelle=0;
    string eVokabeln[Stelle];
    string dVokabeln[Stelle];
Legt jeweils ein Array mit 0 Elementen an, da Stelle 0 ist.
Willst du dynamische Arrays haben, musst du Datencontainer, z.B Listen verwenden, bzw "vector" ist eine C++ klasse der STL, die das Implementiert.
Dann sollte das für dich Interessant sein:
http://www.proggen.org/doku.php?id=c:faq:input-puffer

MfG cloidnerux.
Redundanz macht wiederholen unnötig.
quod erat expectandum

Flizzberg
Beiträge: 3
Registriert: Sa Okt 20, 2012 1:53 pm

Re: Programmabsturz nach Variableneingabe

Beitrag von Flizzberg » Sa Okt 20, 2012 4:51 pm

Danke hab den Fehler jetzt gefunden und es funktioniert!

Benutzeravatar
cloidnerux
Moderator
Beiträge: 3123
Registriert: Fr Sep 26, 2008 4:37 pm
Wohnort: Ram (Gibts wirklich)

Re: Programmabsturz nach Variableneingabe

Beitrag von cloidnerux » So Okt 21, 2012 2:15 am

Danke hab den Fehler jetzt gefunden und es funktioniert!
Was war denn der Fehler und wie hast du ihn gelöst?
Redundanz macht wiederholen unnötig.
quod erat expectandum

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8862
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Programmabsturz nach Variableneingabe

Beitrag von Xin » So Okt 21, 2012 8:47 am

Flizzberg hat geschrieben:Ich benutzte devcpp und Windows 7
DevCpp wird seit Jahren nicht mehr unterstützt, bitte sieh Dir z.B. CodeBlocks, CodeLite oder Visual Studio an.
Flizzberg hat geschrieben:Danke hab den Fehler jetzt gefunden und es funktioniert!
Das ist erfreulich :-)
Allerdings gerade bei aufwendigeren Fragen, zum Beispiel bei der Verwendung einer Library oder eines speziellen Compilerfehlers, der über Google gefunden wird, sollte die Lösung auch wirklich genannt werden.
Nichts ist frustrierender als über Google nur Threads zu finden mit Leuten, die das gleiche Problem haben und ihren Thread mit "Danke, ich habe die Lösung jetzt"... ^^
cloidnerux hat geschrieben:Was war denn der Fehler und wie hast du ihn gelöst?
Flizzberg hat geschrieben:

Code: Alles auswählen

    int Stelle=0;
    string eVokabeln[Stelle];
    string dVokabeln[Stelle];
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Flizzberg
Beiträge: 3
Registriert: Sa Okt 20, 2012 1:53 pm

Re: Programmabsturz nach Variableneingabe

Beitrag von Flizzberg » So Okt 21, 2012 1:05 pm

Der Fehler wurde doch von cloidnerux beantwortet.

Ich hab 'Stelle' mit 0 definiert und dadurch hast das Array ja auch nur eine Stelle.
Bei einer zweiten Eingabe versucht er nun in ein Array etwas zu speichern was nicht existiert. ;D

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8862
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Programmabsturz nach Variableneingabe

Beitrag von Xin » So Okt 21, 2012 4:59 pm

Flizzberg hat geschrieben:Der Fehler wurde doch von cloidnerux beantwortet.
Hm.... ja... ^^

Jetzt seh' ich's auch... was sah ich vorher?!

Egal... wechseln wir das Thema - willkommen auf proggen.org. ^^
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Benutzeravatar
Kerli
Beiträge: 1456
Registriert: So Jul 06, 2008 10:17 am
Wohnort: Österreich
Kontaktdaten:

Re: Programmabsturz nach Variableneingabe

Beitrag von Kerli » So Okt 21, 2012 6:23 pm

Flizzberg hat geschrieben:Ich hab 'Stelle' mit 0 definiert und dadurch hast das Array ja auch nur eine Stelle.
Bei einer zweiten Eingabe versucht er nun in ein Array etwas zu speichern was nicht existiert. ;D
Hier solltest du übrigens aufpassen und zwischen Arraygröße und Index unterscheiden. 'string eVokabeln[0];' definiert ein Array mit Platz für 0 Elementen - Es passt also kein Element rein. 'eVokabeln[0]' hingegen referenziert das Objekt mit einem Offset von 0, also das erste Element im Array.
"Make it idiot-proof and someone will invent an even better idiot." (programmers wisdom)

OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at

Antworten