请怎么会这样C++函数转换为德尔福:转换一个C++内联汇编函数的德尔福内联汇编函数
int To_Asm_Fnc(dword Amem, dword Al, dword Ac) {
int b = 0;
asm ("push %%ecx; \
call %%eax; \
pop %%ecx;"
: "=Al" (b) /* output value */
: "Al" (mem), "Ac" (Al), "d" (Ac) /* input value */
);
return b;
}
,这是我的德尔福尝试
Function To_Asm_Fnc(Amem,Al,Ac:dword):Integer;
var
b:Integer;
begin
Result:=0;
b:=0;
//*******
{ i really didn't get it as in the c++ code }
//*******
Result:=b;
end;
千恩万谢
这不是C++,这是程序集。 –
什么是您的C++编译器。您需要了解调用约定并注册该约定的维护规则才能了解这一点。 –
在Delphi中,你也可以使用'asm'关键字,http://docwiki.embarcadero.com/RADStudio/en/Using_Inline_Assembly_Code。 – Pol