I onda Elem* lst=NULL;
I sad fino napravim funkciju koja dodaje elemente na početak ili kraj liste i dodam jedno 3 elementa. Pogledam adrese tih elemenata u memoriji preko printf i dobijem sledeće vrednosti
3280848
3280904
3280960
Onda sa printf pogledam sizeof(Elem) kad ono dobijem 8 bajtova. Pogledam sizeof lst->broj i sizeof lst->sled kad ono svaki zauzima po 4 bajta.
Sad mene zanima sledeće. Prvi element u listi se nalazi na adresi 3280848, a drugi na 3280904. Kad oduzmem ta dva broja dobijem 56 što predstavlja količinu memomirje u kojoj je smešten 1 element izražen u bitovima. Odnosno 1 element zauzima 7bajtova u memoriji. Kako onda sa sizeof(Elem) dobijem 8 i svaki od članova tog elementa zauzima po 4 bajta, a ukupno zauzeće u memoriji je 7. Gde nestade taj bajt?
77 77 77 2E 65 73 6E 69 70 73 2E 63 6F 6D