x86系统
我正在尝试更改函数的返回值。例如
int foo(){
char buffer[12];
gets(buffer);
return 1;
}
int main(){
int value;
value = foo();
return 0;
}
foo() 总是返回 1。我知道函数的返回值存储到 %eax(所以 1 存储到 %eax)。有什么方法可以达到和更改 %eax 值吗?我认为这不会发生,因为 %eax 没有出现在堆栈中!我说的对吗?