robiw --> już w innym poście upierasz się trochę np nad czymś takim, że funkcje typu inline nie muszą być koniecznie w pliku *.h tylko w *.c .... pomimo że pokazuję jak warto do tego podchodzić. Teraz z kolei wymyślasz już na prawdę ciekawostki,
że niby deklaracje funkcji można sobie umieszczać i w pliku *.c i w *.h - to już jest totalne kuriozum to co tu piszesz. I wcale to nie oznacza że to akurat teraz musi być błędem - jednak robisz coś przez co potem co chwilę się gubisz - bo nie chcesz przyjąć pewnego standardu jaki jest w C tylko robisz coś po swojemu.
W tym przypadku jak pisze Ledes musi być tak bezwzględnie że deklaracje funkcji są albo w *.c albo w *.h a najlepiej jeśli są w *.h i to bez dwóch zdań.
a ten błąd który tu masz wynika też z tego co pisze wyżej Ledes bo i sam kompilator to podpowiada.... coś jest nie tak z syntaktyką - tyle że szukać czasem trzeba w inkludowanym pliku ...
------------------------ [ Dodano po: 3 minutach ]robiw napisał(a):
zwłaszcza, jeśli funkcje korzystają nawzajem z siebie a nie są w odpowiedniej kolejności.
I to właśnie zapewniają deklaracje w plikach *.h - tyle że na razie pewnie to do ciebie jeszcze nie dotarło.
Ja gdy tworzę jakiś plik *.c (pisałem zresztą o tym w książce) np:
XXX_DRV.c
to od razu tworzę plik
XXX_DRV.h
i na początku pliku c umieszczam inkluda:
#include "XXX_DRV.h"
a potem jeśli tylko jakąś funkcję napiszę w *.c to jej deklarację od razu daję do *.h
zacznij tak działać zamiast pisać że sprawdzałeś ale to nic nie dało - czyli co ? powróciłeś do tego co miałeś ? Sorki ale tak to można sobie pomagać przez 5 miesięcy zanim dojdziemy do błędu
eliminuj je (te błędy) od razu krok po kroku.
_________________
zapraszam na blog:
http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj
Kurs EAGLE ] [ mój kanał YT TV
www.youtube.com/mirekk36 ]