私は、C とインターフェイスできるようにしたい仮想マシンで作業しています。逆に、仮想マシンの機能を C コードに公開するのはかなり簡単です。頭を包み込めないのは、C 関数を公開することです。仮想マシン。
次のように、C 関数を仮想マシンに動的に登録できるようにしたいと考えています。
vm_register(printf);
次に、仮想マシンで引数をスタックにプッシュし、次のようにします。
call printf
問題は、関数に必要な引数の数と型がわからないため、関数ポインターを使用できるかどうかわからないことです。
この状況で使用できるジェネリック関数ポインター型はありますか? 誰かが私を正しい方向に導くことができますか?