Forum: Compiler & IDEs Compiler Fehler in Header Datei


von Brenner (Gast)


Lesenswert?

Brauche mal kurz eure Hilfe,

glaube ich stehe auf dem Schlauch :)
1
seite.c:
2
#include "seite.h"
3
void enptrelle(IoPortId Port, unsigned int bits)
4
{...}
1
seite.h
2
void enptrelle(IoPortId Port, unsigned int bits);

Fehlermeldung:
error: expected ')' before 'Port'

Die Funktion in der .c muss doch immer im Header nochmals angegeben 
werden und dann mit einem Semikolon abgeschlossen werden.

Wenn ich die Zeile im Header auskommentiere, wird erfolgreich 
kompiliert, aber dies erscheint mir unsauber!

: Verschoben durch User
von Karl H. (kbuchegg)


Lesenswert?

Brenner schrieb:

> Fehlermeldung:
> error: expected ')' before 'Port'

Lies das mal als
"Was zum Teufel soll ein 'IoPortId' sein?


Grundregel: Wenn du etwas verwendest, dann muss das zuvor bekannt 
gemacht werden. Benutzt du eine struct(?) oder ein typedef oder ein enum 
oder was auch immer und nennst das 'IoPortId', dann muss die Deklaration 
davon sichtbart sein, ehe du das tun kannst. Und sei es nur, in dem zu 
zuvor das entsprechende Header File inkludierst, in dem diese Defintion 
drinnen ist.

: Bearbeitet durch User
von Achim (Gast)


Lesenswert?

> ... enptrelle ...

Ist die Schreibweise beabsichtigt?

> Die Funktion in der .c muss doch immer im Header nochmals angegeben
> werden und dann mit einem Semikolon abgeschlossen werden.

Kommt drauf an. Bei deiner Konstruktion offensichtlich nicht.

von Murkser (Gast)


Lesenswert?

IoPortId ist in Deiner seite.h an der Stelle, an der Du die entprelle 
Funktion deklarierst noch nicht bekannt. Du solltest IoPortId zuvor in 
der gleichen seite.h deklariert haben.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.