Új hozzászólás Aktív témák
-
buherton
őstag
válasz
borisz1994
#6057
üzenetére
Nem egészen. Vagyis hát nem olyan triviális. Főleg a változóknál.
A deklaráció a fordítónak szól, vagyis ez ahhoz kell, hogy a fordító értelmezni tudja a leírtakat, de nincs közvetlen hatása a processzoron futó kódra. Azaz meg lehet írni a programot ezek nélkül, csak olvashatatlan lesz. A definíció a processzornak szól és enélkül nem futna úgy a programunk, ahogy szeretnék.
Kezdjük az egyszerűbbel a függvénnyel.
Ezek deklarációk:
extern void foo(void);static int foo(int);void foo(void);bar(); // ez most nem függvényhívás, és ez most nagyon gonosz dolog tőlem
A fordítónak ezekkel jelzed, hogy ha talál egy ilyen szignatúrájú függvényhívást, amihez még nem találta meg a definíciót, akkor ne hasaljon el és a keywordnek megfelelően járjon el.Ezek definíciók:
void foo(void){}static int foo(int){return 0;}bar(){return 0;}
Leírod, hogy mit csinál a függvény. Ezzel mondod meg, hogy mit csináljon a programod.Változók.
Ez deklaráció (nem is tudok többet ennél):
extern int;
Ugyanaz, mint a függvénynél.Ezek definíciók:
int foo;static char foo;
Ugyanaz, mint a függvénynél.Egyébként igen, a deklaráció nem jár memóriafoglalással, a definíció jár. Viszont a deklaráció csak a láthatóságot növeli, semmi más plusz dolgot nem tud, nem befolyásolja a típust, élettartamot és a tárolási osztályt sem.
Az
intmérete architektúra függő és alimits.h-ban van meg a "mérete". Tipikusan 4 bájt. Ha jól emlékszem, akkor az AVR8 esetén 2 bájt méretűek.
Ú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!
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- World of Warships
- Lenovo Thinkbook, Yoga széria
- Milyen okostelefont vegyek? OFF topik
- Digitális Állampolgárság Program DÁP
- A fociról könnyedén, egy baráti társaságban
- Crimson Desert
- Milyen légkondit a lakásba?
- exHWSW - Értünk mindenhez IS
- Óra topik
- További aktív témák...
- Asus RP-AC87 AC2600 Wi-Fi range extender
- Fujitsu U748 i5-8350 8Gb ram, 256GB SSD win11 számla, garancia
- 27% - ASUS ROG Strix XG27UCG IPS Monitor! 3840x2160 / 160Hz / 1ms / FreeSync
- 27% - ÚJ - Captiva 16" Notebook! Ryzen 9955HX / RTX 5090 / 64GB DDR5 / 2TB NVMe! BeszámítOK
- Lenovo ThinkPad X1 Yoga G6 (6th Gen) - i7-1185G7, 32GB, 512GB SSD, multitouch + TOLL (ELKELT)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
