Hallo Geier,
Wie schon geschrieben wurde:
C erlaubt erst ab C99 die Variablen deklaration in der Initializer list.
Aber der Compiler scheint u8, int16_t und uint16_t nicht zu kennen, was auf eine vergessene mydefs.h schliessen lässt.
Allerdings gibt es noch gemeine Fehler, welche sich in einer Headerdatei verstecken können.
z.B. kann ein vergessenes ';' oder ',' dazu führen, dass weitere Headerdateien irgendeinem Macro oder so zugeschlagen werden.
Eine Fehlermeldung taucht dann erst viel später auf![]()
Grundsätzlich kann man z.B. ein Macro auf mehrer Headerdateien verteilen.
Der Preprocessor fügt bei einem #include wird einfach die angegebene Datei eingefügt.
#defines werden dann wie "suchen und Ersetzen" bei einem Texteditor aufgelöst.
Und in C darf man nur den ersten Fehler beachten!
Der Rest sind meistens Folgefehler weil der Parser aus den Trott kommt.
MfG Peter(TOO)








Zitieren

Lesezeichen