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



Teraz jest 28 gru 2025, o 11:35


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
Autor Wiadomość
PostNapisane: 1 lis 2015, o 20:46 
Offline
Użytkownik

Dołączył(a): 10 kwi 2014
Posty: 141
Lokalizacja: 3-miasto
Pomógł: 0

Witam

Moje pytanie dotyczy przeniesienia deklaracji struktury połączonej z instrukcją "typedef" oraz deklaracje samej zmiennej strukturalnej do pliku *.h. czy tylko w deklaracji samej zmiennej strukturalnej dodajemy "extern" czy też może nazwę samej struktury tez poprzedamy extern-em.

Pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 lis 2015, o 21:08 
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

typedef służy do nadania nowej nazwy jakiemuś typowi zmiennej. Deklaracje nowego typu dla struktury warto trzymać w pliku h. Deklaracja zmiennej ze słowem extern służy do poinformowania kompilatora, że zmienna jest zdefiniowana w innym pliku h. Nie możesz łączyć typedef i extern. Deklaracja struktury ze słowem extern może być w innym pliku c lub w pliku h. Definicja struktury musi znaleźć się w którymś z plików c w projekcie.

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 lis 2015, o 21:13 
Offline
Moderator
Avatar użytkownika

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

Dokładnie jak pisze kolega wyżej, ja tylko tak w skrócie:

1. tworzysz deklarację typu za pomocą typedef zawsze w pliku *.h
2. na tej podstawie tworzysz DEFINICJĘ zmiennej nowo zdefiniowanego typu w pliku *.c
3. jeśli chcesz aby była ta nowa zmienna dostępna w innych plikach to znowu wracasz do pliku *.h i tam tworzysz DEKLARACJĘ tej zmiennej ale już ze specyfikatorem extern

reasumując: definicja typu i DEKLARACJA zmiennej tego typu w pliku *.h zaś DEFINICJA zmiennej tego typu w pliku *.c

_________________
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  
PostNapisane: 1 lis 2015, o 22:53 
Offline
Użytkownik

Dołączył(a): 10 kwi 2014
Posty: 141
Lokalizacja: 3-miasto
Pomógł: 0

Dziękuje za odpowiedzi - tego mi brakowało :-)



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 1 gość


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