Hallo In einigen Programmen steht #include <avr/interrupt.h> in einem anderem Programm steht dann wieder #include "avr/interrupt.h" In der Literatur habe ich einige Hinweise gefunden, das es mit dem suchen zu tun hat. Was bedeutet es genau oder was ist der Unterschied? achim
Achim Seeger schrieb: > #include <avr/interrupt.h> Das ist für Bestandteile einer Bibliothek (in deinem Fall vermutlich die avr-lib) die richtige Syntax. Der Kompiler sucht dann in den Standardpfaden nach den Includes. Projektspezifische Includes hingegen, die im gleichen Pfad wie deine *.c Dateien liegen, setzt du in Anführungszeichen.
Bei Dateien in Anführungszeichen sucht der Compiler aber zusätzlich in den normalen Includepfaden. Das heißt: In Größer-/Kleinerzeichen sucht er die Datei in den Includepfaden, in Anführungszeichen sucht er im aktuellen Projektordner und den Includepfaden.
Faustregel #include < > für alle Systemheader. Also alles was dir aufs Aug gedrückt wird und das du so wie es ist benutzt. #include " " für alle projektspezifischen Header. Also die Dinge die du aufgrund deines Projektes selber schreibst. Aus deiner Sicht gehören die AVR-Header 'zum System', auch wenn es sich dabei nicht um Standard-C-Header Files handelt. Daher: < >
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.