You don't need a separate runtime environment though. Depending on what system you're compiling for, your compiler could easily just turn argc and argv into two globals, one being 0 and the other an empty array, or add some boilerplate code that reads them from somewhere else, like some external sensor. One could get creative with that.
C doesn't really need a runtime.
It does have a runtime called crt which will initialize the argv and argc and call the main function , however it is extremely lightweight
You don't need a separate runtime environment though. Depending on what system you're compiling for, your compiler could easily just turn
argcandargvinto two globals, one being 0 and the other an empty array, or add some boilerplate code that reads them from somewhere else, like some external sensor. One could get creative with that.That's not how it morks most of the time
But that's not what we're talking about; it doesn't need a runtime, regardless of whether it usually has one.