Fehler in String.h



  • Hallo

    Ich möchte einen ganz normalen string kopieren. Das sieht bei mir erstmal so aus:

    # include <string.h>
    
    ...
    
    bool player::init_player(int pos, char *player_name)
    {
    	position=pos;
    	strcpy(name, player_name);
    	return(true);
    };
    
    ...
    
    class player
    {
    private:
    	int money;
    	int position;
    	char name[20];
    	int figure_number;
    
    public:
    	player(int);
    	bool change_money(int);
    	bool init_player(int, char*);
    }
    

    Jetzt kommt aber ein Fehler, der mich etwas wundert:

    c:\programme\microsoft visual studio\vc98\include\string.h(28) : error C2143: syntax error : missing ';' before 'string'
    c:\programme\microsoft visual studio\vc98\include\string.h(28) : fatal error C1004: unexpected end of file found

    Jetzt hab ich mal in meine String.h Datei reingeschaut, was da in Zeile 28 steht:

    #ifdef  __cplusplus
    extern "C" {
    #endif
    

    Da steht aber nirgendwo das Wörtchen 'string', und wo soll da jetzt ein ; hin?

    Hab ich die Fehlermeldung überhaupt richtig interpretiert?

    Wäre nett wenn mir jemand bei dieser Sache helfen könnte.

    Grüße
    Max



  • <string> ohne .h



  • Dann hab ich den selben Fehler nur in einer anderen Datei:

    c:\programme\microsoft visual studio\vc98\include\errno.h(29) : error C2143: syntax error : missing ';' before 'string'
    c:\programme\microsoft visual studio\vc98\include\errno.h(29) : fatal error C1004: unexpected end of file found

    Aber auch wieder in der selben Zeile:

    #ifdef  __cplusplus
    extern "C" {
    #endif
    


  • Deine Klasse player braucht am Ende ein Semikolon.



  • Danke. Das wars.

    Aber da kommt man doch nie drauf, wenn der Fehler auf irgendwelche Headerdateien verweist.

    Endlich kann ich weiter programmieren.

    Danke nochmal



  • Solltest aber Kompiler wechseln ... hast ne sehr alte Version da laufen ... und dann heißt der Header cstring ...


Anmelden zum Antworten