Стандарт C не касается загрузки кода.Нужно просто сказать, как должна вести себя программа при запуске.
На практике в современных операционных системах существует множество возможностей:
- она загружается в память при запуске исполняемого файла
- загружается в память при вызове
- загружается в память где-то между этими двумя точками
- загружается в память до запуск исполняемого файла
Единственная разница между этими случаями заключается в незначительных различиях во времени выполнения программы.Вам, как разработчику, в большинстве случаев даже не нужно знать!
Если вы запускаете исполняемый файл со съемного устройства, то не рекомендуется отключать устройство от сети, прежде чем спрашивать операционную систему, в порядке ли оно, каквозможно, он не загрузил весь программный код в память!