Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 18 kwi 2026, o 21:28


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
Autor Wiadomość
PostNapisane: 15 lip 2013, o 17:35 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 14 maja 2012
Posty: 53
Lokalizacja: Białystok
Pomógł: 0

Witam!

Eksperymentuje z przykładem wave playera z drugiej książki z lekcji 14 i chciałem rozbić ten projekt na kilka plików. Udało mi się przenieść prawie wszystko, poza ostatnią funkcją dotyczącą odtwarzania play, która potrzebuje mieć przedrostek extern, aby być dostępne w main.c, dobrze mówię?

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Natomiast przy kompilacji kompilator krzyczy:

Kod:
make all
Building file: ../main.c
Invoking: AVR Compiler
avr-gcc -Wall -Os -fpack-struct -fshort-enums -std=gnu99 -funsigned-char -funsigned-bitfields -mmcu=atmega32 -DF_CPU=16000000UL -MMD -MP -MF"main.d" -MT"main.d" -c -o "main.o" "../main.c"
In file included from ../main.c:17:
../player.h:65: error: multiple storage classes in declaration specifiers
make: *** [main.o] Error 1

**** Build Finished ****


Problem siedzi w linii deklaracji funkcji play... Co zrobiłem nie tak?

Pozdrawiam

_________________
sig off ;(



Ostatnio edytowano 15 lip 2013, o 18:10 przez mesho, łącznie edytowano 2 razy

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 lip 2013, o 17:50 
Offline
Uzytkownik zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 16 lip 2012
Posty: 2088
Lokalizacja: Leżajsk / Kraków
Pomógł: 411

Wszystkie funkcje bez modyfikatora są widoczne we wszystkich plikach projektu, a dopiero funkcje z przedrostkiem static są dostępne tylko w tym pliku, gdzie są zdefiniowane. Nie używaj extern w stosunku do funkcji.

Skoro funkcja play ma być widoczna w innym pliku to nie powinna mieć przedrostka static.

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 lip 2013, o 18:09 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 14 maja 2012
Posty: 53
Lokalizacja: Białystok
Pomógł: 0

Czyli jak dobrze rozumiem mam w tym przypadku prawidłowo będzie pozostawić bez przedrostków?
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Łał działa, o to chodziło, dzięki!

Btw. tak myślałem że za wrzucenie tych pełnych funkcji ktoś mnie zjedzie :D Okej, powymazywałem lwią część.

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 lip 2013, o 19:14 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27456
Lokalizacja: Szczecin
Pomógł: 1045

mesho napisał(a):
Btw. tak myślałem że za wrzucenie tych pełnych funkcji ktoś mnie zjedzie


eeeeeś ;) nie zdążyłem ;) .... udało ci się hyhyhy

a na poważnie, jak widzisz na wszystko jest logiczne wyjaśnienie i rozwiązanie.

_________________
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 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO