两种调用规范.
_stdcall由被调用者清除堆栈._cdecl缺省调用规范,由调用函数者清除堆栈.

解决方案 »

  1.   

    补充楼上:
    一般VC默认都是用_cdecl调用约定,但是如果你要编译成dll的方式提供给其它的程序使用则最好使用_stdcall方式,(例如VB调用你的函数时,必须用_stdcall调用约定)
      

  2.   

    _stdcall(=pascal):pascal等语言默认使用。一般windows api约定使用。一般com约定使用
    _cdecl :c++/c默认使用。变参windows api使用。变参com使用.
      

  3.   

    _cdecl即C调用模式,_stdcall是PASCAL调用模式,从执行效率来说,_stdcall略高一点。