Witajcie
Piszę w Eaglu program w języku C. Akurat na mikrokontrolery, ale to nie ma znaczenia. Tworzę sobie nową bibliotekę, załóżmy bilioteka1 i includuję nagłówek
biblioteka1.h do main.c. Dokładnie to samo robię z biblioteką biblioteka2. Ponadto do blibliteka2.h includuję biblioteka1.h
Teraz w biblioteka1.h dodaję funkcja1. A w biblioteka2.h dodaję funkcja2. W ciele funkcja2 wywołuję funkcja1. Eclipse wywala mi ostrzeżenie
implicit declaration of function 'funkcja1' .
Oczywiście pomaga to jak w biblioteka2.c dodam na początku extern void funkcja1 (void).
I stąd moje pytanie czy takie rozwiązanie jest poprawne i każdą funkcję którą wykorzystuję w bibliotece z innej biblioteki muszę zadeklarować jako extern, czy powinienem do tematu inaczej podejść.
W nagłówkach .h obu bibliotek stosuję dyrektywy #ifndef, #define, #endif.