witam,
Chce zapytac czemu dynamiczne alokowanie pamieci dla tablic jest wazne ale dla pojedynczych zmiennych juz nie tak bardzo ? Przeciez tez podczas kompilacji nie wiadomo jaka wartosc nadamy tej zmiennej w trakcie dzialania programu.
witam,
Chce zapytac czemu dynamiczne alokowanie pamieci dla tablic jest wazne ale dla pojedynczych zmiennych juz nie tak bardzo ? Przeciez tez podczas kompilacji nie wiadomo jaka wartosc nadamy tej zmiennej w trakcie dzialania programu.
Ilość pamięci dla zmiennej nie jest związana z wartością. Jak wpiszesz do inta 1 i 1000000 to on nadal zajmuje tyle samo pamięci.
A co rozumiesz przez "nadanie wartości"? Ilość zajmowanej pamięci? Inicjalizację (lub przypisanie) zmiennej?
To, ze nieważne czy zrobisz int zmienna = 1000;
czy int zmienna = -500
.
zmienna
zawsze będzie zajmowała sizeof(int)
bajtów pamięci.
W przypadku tablic nie zawsze wiesz z góry ile chcesz mieć takich intów dlatego alokujesz pamięć dynamicznie.
Nawet jeżeli zmienna
nie zostanie zainicjalizowana to i tak będzie ona zajmować sizeof(int)
więc jej wielkość będzie stała.