Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Check den Fehler nicht ^^

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
06.09.2004, 23:46 Uhr
rejo



also hab normal ein c++ programm geschrieben auf [MS Visual C++] aus mehreren *.cpp's und *.h's ... und jetzt wenn ich compile kommen zwei fehler...:


error C2182: 'SpeicherSKennzahl' : illegal use of type 'void'

fatal error C1903: unable to recover from previous error(s); stopping compilation
Error executing cl.exe.

was meint es damit ?

lg
und danke im voraus

rejo
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
07.09.2004, 00:19 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


hast du auch noch ein wenig code dazu?
oder soll das ein Rätsel werden
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
07.09.2004, 00:23 Uhr
Pablo
Supertux
(Operator)


Bravo Winni: Jetzt beginnen wir mit dem Rätsel:

1. Kann es sein, dass man unter einer void Funktion return x; benutzt, wobei x irgendwas ist?
2. Kann es sein, dass er versucht, den Rückgabewert der Funktion zu speichern, obwohl diese void ist?
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
07.09.2004, 16:35 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


wahrscheinlich hat er eine Variable mit dem typ void definiert, also so:


C++:
void Variable;



bei sowas bringt er mir den obigen Fehler, wenn man bei void-Funktionen mit return was zurückgibt kommt sowas nicht.
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
09.09.2004, 14:02 Uhr
rejo




C++:
#ifndef _ALLPPL_
#define _ALLPPL_

class allPeople {

private:

    char vorname[20];
    char nachname[20];

public:

    allPeople();
    ~allPeople();
    void SpeicherVorname();
    void SpeicherNachname();
    char * LeseVorname();
    char * LeseNachname();

};

#endif



C++:
#include <iostream>
#include "expo01.h"

using namespace std;

allPeople::allPeople() {
}

allPeople::~allPeople() {
}

void allPeople::SpeicherVorname() {

    cout << "Bitte geben Sie den Namen ein: ";
    cin >> vorname;
}

void allPeople::SpeicherNachname() {

    cout << "Bitte geben Sie den Nachnamen ein: ";
    cin >> nachname;
}

char * allPeople::LeseVorname() {

    return vorname;
}

char * allPeople::LeseNachname() {

    return nachname;
}




C++:
#ifndef _STUDENT_
#define _STUDENT_
#include "expo01.h"

class Student : public allPeople {

private:

    int schuelerkennzahl;
    char gruppe;

public:

    Student();
    ~Student();
    void SpeicherSKennzahl();
    void SpeicherGruppe();
    int LeseSKennzahl();
    char LeseGruppe();

};

#endif



C++:
#include <iostream>
#include "expo03.h"

using namespace std;

Student::Student() {
}

Student::~Student() {
}

void Student::SpeicherSKennzahl {

    cout << "Bitte geben Sie die Schuelerkennzahl ein: ";
    cin >> schuelerkennzahl;
}

void Student::SpeicherGruppe {

    cout << "Bitte geben Sie die Gruppe ein [x/y]: ";
    cin >> gruppe;
}

int Student::LeseSKennzahl {

    return schuelerkennzahl;
}

char Student::LeseGruppe {

    return gruppe;
}






C++:
#ifndef _LEHRER_
#define _LEHRER_
#include "expo01.h"

class Lehrer : public allPeople {

private:

    int lehrerkennzahl;
    char fach[20];

public:

    Lehrer();
    ~Lehrer();
    void SpeicherLKennzahl();
    void SpeicherFach();
    int LeseLKennzahl();
    char * LeseFach();
};

#endif




C++:
#include <iostream>
#include "expo05.h"

using namespace std;

Lehrer::Lehrer() {
}

Lehrer::~Lehrer() {
}

void Lehrer::SpeicherLKennzahl() {

    cout << "Bitte geben Sie die Lehrerkennzahl ein: ";
    cin >> lehrerkennzahl;
}

void Lehrer::SpeicherFach() {

    cout << "Bitte geben Sie das Fach ein: ";
    cin >> fach;
}

int Lehrer::LeseLKennzahl() {

    return lehrerkennzahl;
}

char * Lehrer::LeseFach() {

    return fach;
}




C++:
#include <iostream>
#include "expo01.h"
#include "expo03.h"
#include "expo05.h"

using namespace std;

Student FunctionStudent(Student a) {

    a.SpeicherVorname(); fflush(stdin);
    a.SpeicherNachname(); fflush(stdin);
    a.SpeicherSKennzahl(); fflush(stdin);
    a.SpeicherGruppe(); fflush(stdin);

    return a;
}

Lehrer FunctionLehrer(Lehrer b) {

    b.SpeicherVorname(); fflush(stdin);
    b.SpeicherNachname(); fflush(stdin);
    b.SpeicherLKennzahl(); fflush(stdin);
    b.SpeicherFach(); fflush(stdin);

    return b;
}

void FunctionLeseStudent(Student a) {

    cout << "Vorname: " << a.LeseVorname()
        << "Nachname: " << a.LeseNachname()
        << "Schuelerkennzahl: " << a.LeseSKennzahl()
        << "Gruppe: " << a.LeseGruppe() << endl;
}

void FunctionLeseLehrer(Lehrer b) {

    cout << "Vorname: " << b.LeseVorname()
        << "Nachname: " << b.LeseNachname()
        << "Lehrerkennzahl: " << b.LeseLKennzahl()
        << "Fach: " << b.LeseFach() << endl;
}

int main() {

    short firstEingabe;

    Student a;
    Lehrer b;

    cout << "Herzlich Willkommen!" << endl;

    cout << "Was wollen Sie eingeben?"
        << "(1) Student" << "\n"
        << "(2) Lehrer" << "\n" << endl;

    cout << "Ihre Eingabe: ";

    cin >> firstEingabe;

    switch(firstEingabe)
    {

    case 1: FunctionStudent(a); break;

    case 2: FunctionLehrer(b); break;

    }

    switch(firstEingabe)
    {

    case 1: FunctionLeseStudent(a); break;

    case 2: FunctionLeseLehrer(b); break;

    }

    return 0;
}        




genung? ^^

lg
rejo

Dieser Post wurde am 09.09.2004 um 14:03 Uhr von rejo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
09.09.2004, 14:07 Uhr
rejo



Srry bin ich nicht dumm hab den fehler gefunden an alle die sich den kopf zerbrochen haben thnx
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
09.09.2004, 14:18 Uhr
Tommix



Ich bin noch dabei (Kopfzerbrechen), was war's denn?
- Tommix

Bearbeitung:

Jetzt seh ich's auch.
Wenn man aus "void" "int" macht, kommt übrigens ein "interner Compiler Fehler".
- Tommix


Dieser Post wurde am 09.09.2004 um 14:20 Uhr von Tommix editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
09.09.2004, 15:41 Uhr
(un)wissender
Niveauwart


Da sind so einige Fehler drin, zum einem fehlt bei den Destuktor von "allpeople" ein virtual.
fflush(stdin) ist nur bei Windows definiert, es fehlen oft die Referenzen, Pufferüberläufe sind vorprogrammiert...
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
09.09.2004, 15:49 Uhr
ao

(Operator)



Zitat von rejo:
genung? ^^


Viel zu viel, würde ich sagen. Hundert Zeilen Code nach einem Syntaxfehler absuchen ist nicht jedermanns Sache.

Die Funktion, in der der Fehler auftritt, und die Deklaration der beteiligten Variablen, eventuell die Definition der betreffenden Klasse, das wäre so etwa passend gewesen. Außerdem eine deutliche Kennzeichnung der fehlerhaften Stelle durch einen Kommentar wie

C++:
// <--- hier
.

Wo ist denn nun der Fehler, ich seh ihn noch nicht.

ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
09.09.2004, 16:51 Uhr
Tommix




C++:
void Student::SpeicherSKennzahl {

    cout << "Bitte geben Sie die Schuelerkennzahl ein: ";
    cin >> schuelerkennzahl;
}


Eine etwas einleuchtendere Fehlermeldung wäre wohl Missing '(' oder so, aber als Compiler hat man's auch nicht immer leicht...

- Tommix

Dieser Post wurde am 09.09.2004 um 16:52 Uhr von Tommix editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: