メインコンテンツまでスキップ

呼び出し規約

比較

規約引数の順序スタックの清掃戻り値用途
cdecl右から左の順でスタックに積まれるcallerEAXレジスタVisual C++の既定
stdcall右から左でスタックに積まれるcalleeEAXレジスタ多くのWindows APIで利用
fastcall最初の2つの引数はECXおよびEDXレジスタ、残りは右から左の順でスタックに積まれるcalleeEAXレジスタ高速な関数呼び出しが必要な場合
thiscallメンバー関数のthisポインターはECXレジスタ、他の引数は右から左の順にスタックに積まれるcalleeEAXレジスタC++のメンバー関数呼び出しで使用
x64最初の4つの引数はRCX,RDX,R8,R9レジスタ、残りは右から左の順でスタックに積まれるcallerRAXレジスタx64

cdecl(C Declaration)

stdcall(Standard Call)

fastcall

thiscall

x64