Hirdetés
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Meggyi001: Áram nélkül....méltóság nélkül.....
- hcl: GPT diszk kisebbre klónozása
- gerner1
- sziku69: Szólánc.
- D@reeo: OlvasóMester - vágólap felolvasó alkalmazás
- Ndruu: Segíts kereshetővé tenni a PH-s arcképeket!
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
Új hozzászólás Aktív témák
-
zka67
őstag
válasz
Jester01
#5552
üzenetére
Szia,
Ezzel együtt az eredeti kiindulás az volt, hogy az & operátor nem egy számot ad vissza, hanem egy megfelelő típusú pointert. Emiatt aztán (int)&x + 1 és (int)(&x + 1) az nem ugyanaz (kivéve ha véletlenül x mérete 1 byte)
Mint említettem, fizikailag a pointer egy (memória)címet tartalmaz, ami egy egyszerű szám (ez lehet 16, 32 vagy akár 64 bites érték is, rendszertől függően, de ebbe most ne menjünk bele). A pointer típusát a fordító kezeli, magából a pointer értékéből ez nem derül ki, mivel nem tárolja azt.
Az eredeti kérdés az az volt, hogy a pointer elé miért nem kell a & jel, ezt próbáltam meg konyhanyelven elmagyarázni a kérdezőnek, hogy megértse.
int main(int argc, char* argv[])
{
char c;
char *p;
p = &c;
printf("sizeof(c)=%d, sizeof(p)=%d, p=%08X\r\n", sizeof(c), sizeof(p), p);
return 0;
}Ennek az eredménye az alábbi:
sizeof(c)=1, sizeof(p)=4, p=0018FF53azaz a c változó a 0x0018FF53-as memóriacímen található. Nincs a p változóban semmilyen típus, csak a változó címe.
Ú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!
- Kötelező frissítésnek számít a Microsoft legújabb csomagja a Windows 11-hez
- Elektromos autók - motorok
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- Vicces képek
- Táp is jár a Chieftec helytakarékos mikrotornyához
- Miért vezet mindenki úgy, mint egy állat?
- Fotók, videók mobillal
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- További aktív témák...
- ÁRGARANCIA!Épített KomPhone i5 12400F 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Ducky One 3 FULL/TKL/SF/MINI billentyűzetek többféle színben és kapcsolókkal, plusz csuklótámaszok
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Apple iPhone 11 Pro 64GB, Kártyafüggetlen, 1 Év Garanciával
- Amazon Kindle 10th Generation ébresztős tok
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
