Bitte um Hilfe.
-
Hallo zusammen ,
ich bin C++ Anfänger und habe in meinem Quellcode einen oder mehrere Fehler. Ich benutze Dev-c++. Beim Kompilieren werden immer sofort mehrere Fehlermeldungen angezeigt. Ich kann aber ne Fehler nicht finden. Könnte mir von euch einer helfen?#include <iostream>
#include <string.h>
#include <stdlib.h>class iep {
public:
char matrikel[10];
char nachname[32];
char vorname[32];
char v1[3];
char v2[3];
char v3[3];
char ergebnis[3];
void einlesen (char *matrikel,char *nachname, char *vorname,char *v1, char *v2, char *v3);
void auswerten (void);
void ausgeben (void);
};int main(void)
{
iep stud1, stud2, stud3, stud4;
char dummy;stud1.einlesen("20020001" ,"Schmidt","Anna","11","11","11");
stud1.auswerten();
stud1.ausgeben();stud2.einlesen("20020002" ,"Müller","Olaf","10","10","00");
stud2.auswerten();
stud2.ausgeben();stud3.einlesen("20020003" ,"Brzoska","Philipp","11","1u","1u");
stud3.auswerten();
stud3.ausgeben();stud4.einlesen("20020004" ,"Lostermann","Hendrik","00","00","00");
stud4.auswerten();
stud4.ausgeben();std::cout << "Programmende bei Tastendruck a.....z :" << endl;
cin >> dummy;return 0;
}
void iep::einlesen(char *matrikel, char *nachname, char *vorname, char *v1, char *v3)
{
strcpy(iep::matrikel,matrikel);
strcpy(iep::nachname,nachname);
strcpy(iep::vorname,vorname);
strcpy(iep::v1, v1);
strcpy(iep::v2, v2);
strcpy(iep::v3, v3);
strcpy(iep::ergebnis, "00");
}void iep::auswerten(void)
{
int v1, v2, v3;
v1 = atoi(iep::v1);
v2 = atoi(iep::v2);
v3 = atoi(iep::v3);if ( (v1==11) && (v2==11) && v3==11))
strcpy(iep::ergebnis, "OK");else if ( (v1==0) && (v2==0) && v3==0))
strcpy(iep::ergebnis, "nt");else
strcpy(iep::ergebnis, "nb");
}void iep::ausgeben(void)
{
cout<< "Matrikel-Nr.: " << iep::matrikel <<endl;
cout<< "Nachname: " << iep::nachname <<endl;
cout<< "Vorname " << iep::vorname <<endl;
cout<< "Versuch 1: " << iep::v1 <<endl;
cout<< "Versuch 2:" << iep::v2 <<endl;
cout<< "Versuch 3: " << iep::v3 <<endl;
cout<< "Ergebnis: " << ergebnis <<endl<<endl;
}Danke
-
Könntest du evtl. die Fehlermeldungen auch noch posten? Das wäre sehr hilfreich.

Ich würde dir raten mit std::string statt mit char-Arrays zu arbeiten. Das macht das leben viel leichter.
Nutze bitte auch die C++Tags hier im Forum.
-
Hallo,
hab jetzt überall std::string für char geschrieben.
Beim kompelieren erscheint folgende Fehlermeldung:
In Zeile : std::cout << "Programmen..... In function 'int main()'
-
Das ist mit Sicherheit nicht die ganze Fehlermeldung.
-
Hier ein Teil der Fehlermeldungen.
In function
int main()': .cpp:40: error:endl' undeclared (first use this function)
.cpp:40: error: (Each undeclared identifier is reported only once for each function it appears in.)
.cpp: At global scope:
.cpp:51: error: prototype for `void iep::einlesen(char*, char*, char*, char*, char*)' does not match any in class `iep'
.cpp:14: error: candidate is: void iep::einlesen(char*, char*, char*, char*, char*, char*)
-
Bei endl fehlt das std:: (ist ja auch in diesem namespace).
Der zweite Fehler
Du hast iep::einlesen mit 5 Parametern deklariert aber mit 6 definiert. Das passt nicht.
-
oder mach ein
"using namespace std;"an den anfang des source files.
In headern sollte man using namespace klauseln vermeiden und lieber den komplett qualifizierten namen verwenden.