Hirdetés
- AMD Navi Radeon™ RX 9xxx sorozat
- Na, milyen hardver kerül a fa alá?
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Majdnem megfelezi a GeForce GPU-k gyártókapacitását az NVIDIA?
- Google One vs iCloud vs OneDrive – melyik a legjobb választás 2025-ben?
- Azonnali alaplapos kérdések órája
- Az SK Hynix elárulta, hogy meddig nem lesz elég memória
- Milyen videókártyát?
- 5.1, 7.1 és gamer fejhallgatók
- DUNE médialejátszók topicja
Új hozzászólás Aktív témák
-
jattila48
aktív tag
válasz
borisz1994
#6064
üzenetére
Ahogy többen írták, deklarációra akkor van szükség, ha egy változót, függvényt, vagy típust előbb akarsz használni, mint ahogy definiálnád. Lokális változóknál nincs különbség, ott a deklaráció egyben helyfoglalással is jár. Főleg globális változók és körbe hivatkozások használatakor kell külön deklarálni, és defniálni. Globális változó deklarálása az extern kulcsszóval történik.Valamelyik fordítási egységben ennek definiáltnak kell lenni, a többi, rá hivatkozó TU-ban pedig extern-nel deklaráltnak kell lenni. Függény deklarációjánál extern kulcsszóra nincs szükség (bár megadható). C-ben a függvények mindig globálisak (nincs lokális fv. ellentétben néhány más programozási nyelvvel). Az előre deklarálást nem tudod elkerülni (program szöveg átrendezéssel), ha körbe hivatkozás van (pl. f fv. hívja g-t,ami hívja f-et). Ilyenkor valamelyiket mindenképp előre kell deklarálni (ezt hívják fv. prototipusnak), aminek a tényleges definícióját (a fv. kódját) csak a másik fv. definíciója után tudod megadni. Fontos eset még a struktúrák előre deklarálása. Ezt is a körbehivatkozás teszi szükségessé (pl. rekurzív adatszerkezetek), hasonlóan, ahogy fv.-ek esetén is. A struktúra definíciója hivatkozik B stuktúrára, ami szintén hivatkozik A-ra. Ekkor azonban a csak előre deklarált struktúra típus nem teljes értékű (hiszen még nem ismerjük a szerkezetét), ezért csak rá mutató pointer típus deklarálható a hivatkozó struktúrában. Az ilyen típust incomplete type-nak hívják.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- iPhone topik
- AMD Navi Radeon™ RX 9xxx sorozat
- War Thunder - MMO Combat Game
- Google Pixel 10 és 10 Pro összehasonlító gyorsteszt
- A rend őrei
- The Division 2 (PC, XO, PS4)
- Na, milyen hardver kerül a fa alá?
- Bittorrent topik
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- További aktív témák...
- Xiaomi 14T Pro 5G 512GB, Kártyafüggetlen, 1 Év Garanciával
- GYÖNYÖRŰ iPhone 15 Pro Max 512GB Blue Titanium -1 ÉV GARANCIA - Kártyafüggetlen, MS4089
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- Apple iPhone SE 2020 64GB, Kártyafüggetlen, 1 Év Garanciával
- Dell Latitude 7320 i5-1145G7 16GB 256GB 1 év garancia
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi


