構造体で定義されている関数をリンクする方法を理解しようとしていますが、関数はアセンブリ コードにあり、c から呼び出そうとしています。関数を呼び出すときにステップの原因が見つからないと思います。未解決の外部シンボルが表示されます...
;Assembly.asm
.686p
.mmx
.xmm
.model flat
include Definitions.inc
.code
?Initialize@Foo@@SIXPAUFee@@@Z proc
jmp $
?Initialize@Foo@@SIXPAUFee@@@Z endp
end
//CFile.c
struct Fee
{
signed long id;
}
struct Foo
{
static void Initialize(Fee *);
}
int startup(Fee * init)
{
Foo::Initialize(init); //<-- This is unresolved
return 0;
}