Dinamik hotira bu dastur bajarilishi jarayonida ajratiladigan hotiradir. Dinamik hotira ajratilgandan so’ng to free() funktsiyasi tomonidan bo’shatilmaguncha saqlanadi. Agar dinamik hotira dastur bajarilishi tugaguncha bo’shatilmagan bo’lsa, avtomatik ravishda dastur tugaganda bo’shatiladi. Shunga qaramay ajratilgan hotirani dasturda mahsus bo’shatish dasturlashning sifatini oshiradi. Dastur bajarilish davomida ajratilgan hotira qismiga murojaat imkoniyati shu qismga adreslovchi ko’rsatkichga bog’likdir. Shunday qilib, biror blokda ajratilayotgan dinamik hotira bilan ishlashning quyidagi uchta varianti mavjuddir: • Ko’rsatkich avtomatik hotira turiga kiruvchi lokal ob'ekt. Bu holda ajratildgan hotiraga blokdan tashqarida murojaat qilib bo’lmaydi, shuning uchun blokdan chiqishda bu hotirani bo’shatish lozimdir. • Ko’rsatkich avtomatik hotira turiga kiruvchi lokal statitk ob'ekt. Blokda bir marta ajratilgan dinamik hotiraga, blokka har bir qayta kirilganda ko’rsatkich orqali murojaat qilish mumkindir. Hotirani blokdan foydalanib bo’lgandan so’ng bo’shatish lozimdir. • Ko’rsatkich blokka nisbatan global ob'ektdir. Dinamik hotiraga ko’rsatkich ko’rinuvchi hamma bloklardan murojaat qilish mumkin.Hotirani fakat undan foydalanib bo’lgandan so’ng bo‘shatish lozimdir.
Dinamik hotira bu dastur bajarilishi jarayonida ajratiladigan hotiradir. Dinamik hotira ajratilgandan so’ng to free() funktsiyasi tomonidan bo’shatilmaguncha saqlanadi. Agar dinamik hotira dastur bajarilishi tugaguncha bo’shatilmagan bo’lsa, avtomatik ravishda dastur tugaganda bo’shatiladi. Shunga qaramay ajratilgan hotirani dasturda mahsus bo’shatish dasturlashning sifatini oshiradi. Dastur bajarilish davomida ajratilgan hotira qismiga murojaat imkoniyati shu qismga adreslovchi ko’rsatkichga bog’likdir. Shunday qilib, biror blokda ajratilayotgan dinamik hotira bilan ishlashning quyidagi uchta varianti mavjuddir: • Ko’rsatkich avtomatik hotira turiga kiruvchi lokal ob'ekt. Bu holda ajratildgan hotiraga blokdan tashqarida murojaat qilib bo’lmaydi, shuning uchun blokdan chiqishda bu hotirani bo’shatish lozimdir. • Ko’rsatkich avtomatik hotira turiga kiruvchi lokal statitk ob'ekt. Blokda bir marta ajratilgan dinamik hotiraga, blokka har bir qayta kirilganda ko’rsatkich orqali murojaat qilish mumkindir. Hotirani blokdan foydalanib bo’lgandan so’ng bo’shatish lozimdir. • Ko’rsatkich blokka nisbatan global ob'ektdir. Dinamik hotiraga ko’rsatkich ko’rinuvchi hamma bloklardan murojaat qilish mumkin.Hotirani fakat undan foydalanib bo’lgandan so’ng bo‘shatish lozimdir.
Dinamik xotira
Bu misolda dinamik hotira ob'ekti ichki statik ko‘rsatkich bilan bog‘liqdir: