第1个回答 2015-10-22
在一个函数中调用另一个函数,会将当前状态入栈,等执行完下一个后出栈,恢复状态继续往下执行
例:
int myfun()//假如指向到此函数
{
...
myfun1(); //调用myfun1函数,那我之前的变量怎么办?入栈保存,然后跳转到函数myfun1
....
}
int myfun1()
{
myfun2(); //又要调用新的怎么办,入栈保存现有变量,然后进入myfun2
}
int myfun2()
{
return 0; //运行完myfun2,终于返回了。然后回到myfun1,保存的变量出栈,继续执行myfun1
}
第2个回答 2013-11-27
这关系到内存的问题
首先内存分为五大部分,栈,堆,全局区,常量区,代码区,
函数的调用是在栈里进行的,首先函数压栈,然后栈里存储函数的局部变量等,进行运算,
等函数结束,函数出栈,就这样了
第3个回答 2013-11-27
在一个函数中调用另一个函数,会将当前状态入栈,等执行完下一个后出栈,恢复状态继续往下执行
例:
int myfun()//假如指向到此函数
{
...
myfun1(); //调用myfun1函数,那我之前的变量怎么办?入栈保存,然后跳转到函数myfun1
....
}
int myfun1()
{
myfun2(); //又要调用新的怎么办,入栈保存现有变量,然后进入myfun2
}
int myfun2()
{
return 0; //运行完myfun2,终于返回了。然后回到myfun1,保存的变量出栈,继续执行myfun1
}本回答被提问者和网友采纳