程序的翻译环境和执行环境
在ANSI C的任何一种实现中,存在两个不同的环境。
- 翻译环境:在这个环境中源代码被转换为可执行的机器指令。
- 执行环境:用于执行代码的环境。
翻译环境
执行环境
- 程序必须载入内存。
在有操作系统的环境中,程序载入内存的操作一般有操作系统完成。
在独立的环境中(单片机等),程序的载入由手工完成,将可执行代码植入只读内存 - 程序执行开始。调用main函数。
- 开始执行程序代码。这时程序将使用一个运行时堆栈(stack),储存函数的局部变量和返回地址。程序同时也可以使用静态(static)内存,储存在静态内存中的变量的值在程序的整个执行过程一直保留。
- 中值程序。即中值main函数,可能是正常中值,也可能是异常终止。。