程序集函数调用x64 VC ++

时间:2014-01-14 01:34:35

标签: c++ visual-c++ 64-bit inline-assembly

所以我正在为main编写一个包装器,并且仍然提供一个类似于main的功能,因此用户可以定义int main()或int main(argc,argv),两者都可以。我能够为一些带内联汇编的编译器做到这一点,推动argc& argv在调用用户的main之前进入堆栈。但是对于x64 VC ++,没有内联汇编,所以有关如何实现这一点的任何建议吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

我看到两个明显的选择:用汇编语言编写代码,包含在汇编语言文件中,或者用C ++编写代码而不用任何内联汇编:

void my_entry_point() { 
     int argc = foo();
     int argv = bar();
     int ret = main(argc, argv);
     exit_to_os(ret);
}