c语言编译程序是什么程序中如哬理解栈是由编译器管理的?
最近看书有一句话“c语言编译程序是什么程序中,栈是由编译器自动分配释放的”请问如何理解栈是由編译器管理的?
编译器不是在程序编译链接的时候用的么?而栈是在程序运行的时候产生的那么如何理解栈是由编译器管理的?
基本那个局部变量 或 函数的参数地址 都固定好了
当编译完成代码生成以后,程序就脱离编译器了
。所以编译器并没有管理你的栈,是你的程序里编译器安排的代码,在管理你的栈
------解决思路----------------------简单来说就是那个栈寄存器是由编译器负责维护的,编译器插入必要的指令对其操作如分配,释放建立存储位置与局部变量的对应关系等。。