Gdzie w pamięci są moje zmienne przechowywane w C?

Biorąc pod uwagę, że pamięć jest podzielona na cztery segmenty: dane, sterty, stos i kod, gdzie znajdują się zmienne globalne, zmienne statyczne, stałe typy danych, zmienne lokalne (zdefiniowane i zadeklarowane w funkcjach), zmienne (w funkcji głównej), wskaźniki a dynamicznie przydzielana przestrzeń (za pomocą malloc i calloc) jest zapisywana w pamięci?

Myślę, że zostaną one przydzielone w następujący sposób:

Zmienne globalne -------> daneZmienne statyczne -------> daneStałe typy danych -----> kodZmienne lokalne (zadeklarowane i zdefiniowane w funkcjach) --------> stosZmienne zadeklarowane i zdefiniowane w głównej funkcji -----> stertyWskaźniki (na przykładchar *arr, int *arr) -------> kupaDynamicznie przydzielane miejsce (przy użyciu malloc i calloc) --------> stos

Mam na myśli te zmienne tylko z perspektywy C.

Popraw mnie, jeśli się mylę, ponieważ jestem nowy w C.

questionAnswers(7)

yourAnswerToTheQuestion