Nie da się. Taka operacja dość znacznie utrudniła by analizę składniową przez kompilator. Poza tym w przypadku zmiennych lokalnych jest to wykluczone, by programista zarządzał stosem funkcji.
auto w C++11 i późniejszych oznacza, że typ ma być wydedukowany przez kompilator, ale musi być to konkretny typ i nie może być potem zmieniany.
W C istnieje słowo auto ale oznacza ono po prostu zmienną lokalną (jest po pozostałość po języku B, w C nie ma konieczności pisania auto przy zmiennych lokalnych chociaż można to robić jak się bardzo chce, w C++ dla kompatybilności z C również można używać auto w tym znaczeniu).
Sam język czegoś takiego nie oferuje.
Systemy operacyjne zwykle udostępniają obsługę bibliotek ładowanych dynamicznie, ale jest to zależne od konkretnego systemu operacyjnego.
To zależy od systemu operacyjnego. Pewnie da się pod każdym, lecz najpierw (być może) musiałbyś wywołáć jakąś funkcję do zmiany atrybutów regionu pamięci. Kod raczej powinien być nie zapisywalny, co umożliwia tryb chroniony lub PAE.
W C nie można zmierzyć długości funkcji, funkcja nie musi się znajdować w ciągłym obszarze pamięci i niektóre fragmenty kodu mogą być współdzielone przez kilka funkcji.
Z poziomu C nie da się. Musisz zapytać system operacyjny, a jak sam piszesz system operacyjny to musisz przeczytać w dokumentacji do swojej platformy jak to sprawdzić.
Bierzesz duży blok pamięci i dzielisz wedle własnego uznania
Skąd wziąć duży blok pamięci? Prosisz o niego system operacyjny, a jak sam piszesz OS to masz do dyspozycji cały RAM
Biblioteka standardowa języka C w wielu przypadkach nie korzysta z wywołań jądra, tylko alokuje pamięć we wcześniej zaalokowanym bloku, więc zrobienie alloc i free jest jak najbardziej możliwe. Po prostu zadeklarujesz globalną tablicę i nią zarządzasz. Haiku jest na mit/x11, więc chyba możesz podglądnąć ich alokator.