- Xiaomi 17 Ultra - jó az optikája
- Motorola Moto G06 Power – nagyfater új zakót vett
- Redmi Note 9 Pro [joyeuse]
- MWC 2026: Műholdakkal tömné ki a Telekom a lefedettségi réseket
- One mobilszolgáltatások
- Samsung Galaxy A36 5G - a középső testvér
- Apple iPhone Air - almacsutka
- Maradt 46 mm a Xiaomi Watch S5, de nőtt a kijelző
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
- Honor 200 Pro - mobilportré
Ú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!
- Xbox Series X|S
- Xiaomi 17 Ultra - jó az optikája
- Motorola Moto G06 Power – nagyfater új zakót vett
- Mikrokontrollerek Arduino környezetben (programozás, építés, tippek)
- Kész rémálom lesz Linuxot használni jövőre az USA egyes államaiban
- Crimson Desert
- Redmi Note 9 Pro [joyeuse]
- PlayStation 5
- AMD vs. INTEL vs. NVIDIA
- OpenWRT topic
- További aktív témák...
- Lenovo ThinkPad T14 Gen 1 i5-10210 / 16GB RAM/ 256GB NVMe SSD világítós EU bill, kiváló állapotban
- vizes GAMER PC - RYZEN 5 7600X / 32GB DDR5 / RTX 5070 12GB
- HP EliteBook 840 G7 i5-10210U / 16GB RAM / 256GB SSD Szép állapot, EU bill, gyári töltő
- A KINCS ! Új HP EliteBook 860 G10 Profi Fémházas Laptop -50% 16" i7-1355U 32/1TB FHD+ IPS MATT
- Dobozos DELL Inspiron 16 Fémházas Multimédiás Laptop 16" -30% Ryzen 7 8840U 8mag 16/1TB FHD+ IPS
- Alkalmi vétel! HP Omen 17! I7 12700H / RTX 3070Ti 8GB / 1TB Nvme SSD / 16GB DDR5 !
- LG 83B4 - 83" OLED - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - PS5 és Xbox Ready
- AKCIÓ! Sosemhasznált! HP OmniBook 5 i3-1315U 8GB 1TB 16" FHD+ Gar.: 1 év
- Telefon felvásárlás! Samsung Galaxy A15, Samsung Galaxy A25, Samsung Galaxy A35, Samsung Galaxy A55
- Eladó Samsung Galaxy A53 5G 6/128GB fekete / 12 hónap jótállás
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


