Dinamička alokacija memorije - pitanje

Dinamička alokacija memorije - pitanje

offline
  • Programer
  • Pridružio: 23 Maj 2012
  • Poruke: 4534

Sad baš obrađujem ovu lekciju u C++ i pokušavam nešto.

#include<iostream> int main() {    int iVelicinaNiza;    std::cout << "Koliko celobrojnih vrednosti moze biti ubaceno?" << std::endl;    std::cin >> iVelicinaNiza;    int* iIntNiz = new int[iVelicinaNiza];    for (int iIndex = 0; iIndex < iVelicinaNiza; ++iIndex) {       std::cout << " Upisite celobrojnu vrednost #" << iIndex << ": ";       std::cin >> iIntNiz[iIndex];    }    for (int iIndex = 0; iIndex < iVelicinaNiza; ++iIndex) {       std::cout << iIntNiz[iIndex] << "   ";    }    std::cout << std::endl;    delete [] iIntNiz;    std::cout << iIntNiz << std::endl;    return 0; }

Ako ne razumete o čemu se radi evo i slike:



Dakle , ova funkcija delete bi trebalo da obriše sadržaj niza iIntNiz, i uspelo je, ali se nakon toga pojavi ova memorijska lokacija na kraju prozora. Sad je moje pitanje da li je to adresa tog pointera ili nešto drugo? To pitam zato što mi se stalno pojavljuje neka druga vrednost.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 19 Maj 2011
  • Poruke: 297

To je adresa gde pokazuje. Generalno posle delete-a bi trebalo postaviti pokazivac na 0.
Imas jedan od Filozofovih clankova gde je lepo objasnio pokazivace.



offline
  • Programer
  • Pridružio: 23 Maj 2012
  • Poruke: 4534

Ne znam onda zašto nije tako. Ja sam pomislio da to delete briše pokazivač iz memorije Mr. Green

offline
  • Pridružio: 19 Maj 2011
  • Poruke: 297

Ne brise se pokazivac, "brise" se (oslobadja) prostor na koji pokazuje taj pokazivac. Sam pokazivac je na drugom memorijskom mestu, ako mozes to da zamislis?

offline
  • Programer
  • Pridružio: 23 Maj 2012
  • Poruke: 4534

Razumem Smile

offline
  • Fil  Male
  • Legendarni građanin
  • Pridružio: 11 Jun 2009
  • Poruke: 16454

Baci pogled:
http://www.mycity.rs/C/Analiza-situacije-Stomping-on-a-C-pointer.html

offline
  • Programer
  • Pridružio: 23 Maj 2012
  • Poruke: 4534

Razumem sad, pointer je ostao da pokazuje na tu memorijsku lokaciju. Dakle divlji pointer. OK, hvala vam na odgovoru Ziveli

Ko je trenutno na forumu
 

Ukupno su 584 korisnika na forumu :: 4 registrovanih, 3 sakrivenih i 577 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: hyla, kybonacci, Mixelotti, saputnik plavetnila