Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Atmega 32 - plik nagłówkowy

squelch 19 Kwi 2015 17:32 564 4
  • #1 19 Kwi 2015 17:32
    squelch
    Poziom 11  

    #ifdef -sprawdza czy dane słowo jest zdefiniowane za pomoćą #define i jak jest to program się kompiluje

    #ifndef-sprawdza czy dane słowo jest zdefiniowane za pomoćą #define i jak jest to program się nie kompiluje

    w plikach nagłówkowych robi się tak
    #ifndef asdf
    #define asdf

    #endif

    Czyli program skompiluje tylko pierwsze załączenie a inne załączenia do plików pominie bo występuje ifndef o co z tym chodzi jak to działa :?: :?: :?: :?:

    0 4
  • #2 19 Kwi 2015 17:57
    tadzik85
    Poziom 38  

    Mniej więcej, do zabezpieczenie przed podwójnym includem zawartości pliku.
    Gdyż z różnych źródeł plik może zostać dołączony.

    0
  • #4 19 Kwi 2015 19:20
    squelch
    Poziom 11  

    No dobrze ale czy nie wystąpi błąd jak 2 raz zajdzie dołączenie bo wtedy kompilator całkowicie pominie plik .h nie rozumiem tego o co w tym chodzi czy moglibyście mi to wytłumaczyć na chłopski rozum

    0
  • #5 19 Kwi 2015 19:28
    tadzik85
    Poziom 38  

    squelch napisał:
    No dobrze ale czy nie wystąpi błąd jak 2 raz zajdzie dołączenie bo wtedy kompilator całkowicie pominie plik .h nie rozumiem tego o co w tym chodzi czy moglibyście mi to wytłumaczyć na chłopski rozum


    W pliku c includujesz plik xxx.h oraz yyy.h. Teraz plik yyy.h inclusive plik xxx.h.

    Bez zabezpieczenia plik C będzie zawierał dwa razy zawartość pliku xxx.h
    Co spowoduje szereg błędów. Z zabezpieczeniem zawartość pliku trafi do c tylko raz.

    0