merkwürdige Fehlermeldungen bei einbinden von Unterprogramm



  • Also ich habe folgendes geschrieben

    hauptprogramm:

    #include <iostream.h>
    #include "Rechnerhardware.h"
    #include "ergebnis.h"
    
    int main()
    {
    	struct ergebnis erg;
    	int rnd_var=15; // zufallsvariable
    	unsigned int anzahl;  // Anzahl der Fragen
    	char auswahl;
    
        rechnerhardware (rnd_var,&erg,&anzahl);
    	return 0;
    }
    

    Unterprogramm:

    #include <iostream.h>
    #include "ergebnis.h"
    
    void rechnerhardware (int rnd_var,struct ergebnis *erg,unsigned int *anzahl)
    { 
    
      // .....
    }
    

    ergebnis.h

    #ifndef __ergebnis__
    #define __ergebnis__
    
    struct ergebnis  //Struktur für Ergebniss
    {
    	int richtig;  
    	int falsch;  
    };
    
    #endif __ergebnis__
    

    Rechnerhardware.h

    #ifndef __Rechnerhardware__
    #define __Rechnerhardware__
    
    void rechnerhardware (int ,struct ergebnis *,unsigned int *)
    
    #endif __Rechnerhardware__
    

    Wenn ich das jetzt Compiliere bekomme ich merkwürdige Fehlermeldungen direkt im struct header:

    :\programme\microsoft visual studio\myprojects\einführung_in_die_informatik\ergebnis.h(6) : error C2143: Syntaxfehler : Fehlendes ';' vor '<class-head>'
    c:\programme\microsoft visual studio\myprojects\einführung_in_die_informatik\ergebnis.h(6) : fatal error C1004: Unerwartetes Dateiende gefunden
    Rechnerhardware.cpp
    Fehler beim Ausführen von cl.exe.

    Einführung_in_die_Informatik.exe - 2 Fehler, 0 Warnung(en)

    Nur ich versteh echt nicht warum?
    Vielleicht weil ich keine Klassen verwendet habe sondern aus C typische Unterprogramme ?



  • Du hast in der 'Rechnerhardware.h' das Semikolon des Prototypen vergessen. (btw solltest du die 'ergebnis.h' schon im Header einbinden)



  • Ah^^
    das kommt davon wenn man sowas übermüdet schreibt xD.



  • struct ergebnis
    

    Ich weis nicht was du damit vor hast, aber kennst du

    bool
    

    ???



  • 3DG schrieb:

    struct ergebnis
    

    Ich weis nicht was du damit vor hast, aber kennst du

    bool
    

    ???

    Wie codierst du in einem bool die Anzahl der richtig und falsch beantworteten Fragen?



  • obligatorischer hinweis auf typische fehler:

    Dragonslayer schrieb:

    #include <iostream.h>
    

    muss heißen:

    #include <iostream>
    
    #ifndef __ergebnis__
    

    bezeichner mit _ am anfang gehören den compiler und sollten nicht verwendet werden.


Anmelden zum Antworten