C# 从c调用mono_方法(指针)
我有单声道代码C# 从c调用mono_方法(指针),c#,c,pointers,mono,unsafe,C#,C,Pointers,Mono,Unsafe,我有单声道代码 公共静态不安全int*mono_方法(int*p) { //.. 返回p; } 想从原生c中调用它吗 MonoObject*result=mono_运行时调用(mono_方法,NULL,args,NULL) 我尝试了一些不同的指针,args标志中的变量(应该是void**) 但是当我执行运行时调用时,总是得到SIGSEGV错误 我的问题是: 是否可以通过运行时调用将指针从c传递到mono,以及如何传递 致以最诚挚的问候。这个问题刚刚在这里提出,但是。您可能已经测试了所有内容
公共静态不安全int*mono_方法(int*p)
{
//..
返回p;
}
想从原生c中调用它吗
MonoObject*result=mono_运行时调用(mono_方法,NULL,args,NULL)代码>
我尝试了一些不同的指针,args标志中的变量(应该是void**)
但是当我执行运行时调用时,总是得到SIGSEGV错误
我的问题是:
是否可以通过运行时调用将指针从c传递到mono,以及如何传递
致以最诚挚的问候。这个问题刚刚在这里提出,但是。您可能已经测试了所有内容,除了在
:params数组包含具有相同约定的方法的参数:对象实例的MonoObject*指针和值类型的指针
void* args[1];
int val = 10;
MonoObject *result;
args [0] = &val;
result = mono_runtime_invoke(mono_method, NULL, args, NULL);
/* result will be a boxed IntPtr since pointer types can't be boxed themselves */
嗯,那么下一个问题是,有没有可能传递一个指向函数的指针,而不是指向int的指针,然后在mono代码中执行函数?