Kezdőoldal » Számítástechnika » Programozás » Láncolt listák felszabadítása...

Ozmium42 kérdése:

Láncolt listák felszabadítása C-ben? (bővebben a leírásban)

Figyelt kérdés
Ha van egy láncolt listám, aminek az elemei külön-külön is tartalmaznak láncolt listák elejére mutató pointereket az adatrészben, akkor ha egy ilyen elemet fel akarok szabadítani (free), akkor először az alacsonyabb rendű lista elemeit kell felszabadítgatni külön-külön, és utána magát az elemet?
2017. júl. 25. 22:09
 1/4 anonim ***** válasza:
100%
Nyilván.
2017. júl. 25. 22:41
Hasznos számodra ez a válasz?
 2/4 A kérdező kommentje:
Akkor bónusz kérdés: a struktúra adat részével mi történik felszabadításkor? Azt szintén külön fel kell szabadítani?
2017. júl. 26. 01:15
 3/4 anonim ***** válasza:
100%
Ami egy struktúra/objektum által lefoglalt memóriaszegmensen van (tehát lényegében minden ami közvetlenül a struktúra eleme), azok automatikusan felszabadulnak az adott objektum megsemmisülésekor. Amire viszont pointer mutat, az más tészta, lévén csak maga a pointer tartozik az objektum alá, az általa mutatott értéknek külön memóriaszegmens van foglalva. Így ha nem szabadítod fela pointereken mutatott értékeket manuálisan, akkor a pointer automatikusan megsemmisül, de amire a pointer mutaott, az bentmarad a emóriában (és már elő sem nagyon tudod bányászni). Ebből következik, hogy ha pointerekkel, láncolt listákkal mókolsz, mindig szem előtt kell tartanod, hogy a pointerek által mutatott értékek előbb legyenek felszabadítva, mint maga a pointer.
2017. júl. 26. 01:23
Hasznos számodra ez a válasz?
 4/4 A kérdező kommentje:
Nagyszerű :) Köszönöm.
2017. júl. 26. 01:32

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!