Forum: Compiler & IDEs Was ist richtig? Was ist Was ?


von Achim S. (achims)


Lesenswert?

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

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

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.

von Dussel (Gast)


Lesenswert?

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.

von Karl H. (kbuchegg)


Lesenswert?

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
Noch kein Account? Hier anmelden.