Pamięć dynamiczna
Pamięć dynamiczna
Dotychczas używając pamięci trzeba było z góry znać jej wielkość, aby zadeklarować odpowiednią strukturę danych. Takie rozwiązanie bywa niewygodne, gdy nie wiemy, z jak dużymi danymi będziemy mieli do czynienia. Często bowiem wraz z danymi pojawia się ich rozmiar dopiero wtedy chcielibyśmy ustalać wielkość struktury danych. Temu celowi służy tzw. pamięć dynamiczna, czyli taka, której rezerwacja i zwalnianie odbywa się w czasie działania programu.
System operacyjny uruchamiając program przeznacza na jego obsługę fragment pamięci, zapewniając wyłączność tak, aby żaden inny proces nie mógł się do niej dostać. W tym fragmencie przydzielonej pamięci mieści się kod programu, dane statyczne (czyli zadeklarowane na etapie deklaracji) oraz dane dynamiczne, czyli takie, dla których pamięć jest rezerwowana i zwalniana na bieżąco. W naszym języku będzie można deklarować zmienne dynamiczne, które będą rozpoznawane dzięki poprzedzeniu typu przy deklaracji symbolem