我正在尝试学习 ASM,并想尝试一些与 C++ 相结合的东西。ASM 部分是在一个裸函数中完成的。但是每当我调用函数(空)时,应用程序就会在下一个函数中崩溃。我应该在裸函数中做什么才能使其工作,我需要弹出 esp 什么的吗?一个例子可能会有所帮助。
_declspec(naked) void asmfunc()
{
_asm
{
}
}
int _tmain(int argc, _TCHAR* argv[])
{
i = 1;
asmfunc();
cout << i << endl; // <-- crash
system("pause");
return 0;
}