- DIGI kábel TV
- Az USA nem akarja visszafogni Kína növekedését
- Mikrotik routerek
- A pápa egyre jobban tart a romlott AI veszélyeitől
- Súlyos adatvédelmi botrányba kerülhet a ChatGPT az EU-ban
- Windows 10
- OpenMediaVault
- YouTube
- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- Milyen program, ami...?
Új hozzászólás Aktív témák
-
Szirty
őstag
válasz mcwizard #4110 üzenetére
Üdv mcwizard!
A lokális változók a hívás végén nem törlődnek. A rendszer nem törli őket szándékosan. Ám a tartalmukat nem szabad figyelembe venni a blokkon belül azelőtt, hogy értéket adtunk volna neki.
Az ok rendkívül egyszerű: A lokális változók tartalmát más blokkok lokális változói felülírhatják ha használnak lokális változót illetve ha írják azokat. Így minden blokkban minden lokális változó tartalma lényegében határozatlan, memória szemét van benne. Egyszerűen azért, mert minden blokk ugyanazt a stack-et (memória területet) használja a saját lokális változói tárolására.
Ezért ha csak egyetlen egy blokkod van ami ír egy lokális változót, de a többi blokkban is létrehozol változókat amik így ugyanarra a címre kerülnek, ám azokat nem írod csak olvasod, akkor azt fogod tapasztalni hogy amikor az író blokk megváltoztatja a lokális változó értékét, akkor az a többi blokkban is megváltozik. Illetve az író blokk elején is az az érték van benne amit utoljára beleír.
Ha azonban nem "steril", hanem olyan programban vizsgálnád meg ugyanezt a jelenséget ahol különböző blokkok különböző célra intenzíven használnak különböző belső változókat a saját céljukra (a gyakorlatban minden program ilyen lényegében) akkor gyökeresen mást tapasztalnál.
Ha tehát arra hagyatkozol amit most tapasztaltál, annak vége igen nagy szívás lehet. Ezért nagyon fontos szabály, hogy egy blokkban lokális változót SOHA nem használunk fel azelőtt a blokk lefutásán belül, hogy annak értéket adtunk volna!
Új hozzászólás Aktív témák
- Ukrajnai háború
- Call of Duty: Modern Warfare III (2023)
- Eredeti játékok OFF topik
- Szevam: Érzelmi magabiztosság/biztonság - miért megyünk sokan külföldre valójában?
- DIGI kábel TV
- Helldivers 2 (PC, PS5)
- Az USA nem akarja visszafogni Kína növekedését
- Huawei Mate 10 Pro - mestersége az intelligencia
- Elektromos rásegítésű kerékpárok
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- További aktív témák...
- Új Hp Pavilion 15-eh Fémházas Szuper Laptop 15,6" -30% AMD Ryzen 7 5700U 8Mag 16/1TB FHD MATT
- ATI RADEON RX 480 -8 gb DDR5 256 bit videokártya
- Geforce GTX 460-1 gb DDR5 256 bit videokártya
- Geforce G 210 -1 gb videokártya
- Díszdobozos Lenovo Yoga Slim 7i Pro "Kis Gamer" Ultrabook 14" -40% i5-11300H 16/512 QHD+ 2,8K OLED