繁体   English   中英

如何在 C# 中编组 void* function 返回类型和参数?

[英]How to Marshal a void* function return type and parameter in C#?

我有一个带有原型的 C function, void* VoidPointer(void*); 现在我需要在 C# 中编组它(使用 DllImport)。 但是不知道C#代码中的参数怎么提。

  • static public extern WHAT_RETURN_TYPE VoidPointer( WHAT_PARAMETER_TYPE );
  • 如何使用 C# 代码中的正确参数进行调用(示例使用)

我是 C# 的新手,需要尽快解决这个问题(在几次尝试中出现了这样的错误,无法从“int”转换为“System.IntPtr”)谢谢。

c# 支持空指针。 只需将 function 声明为

[DllImport("test.dll")]
public static extern unsafe void* VoidPointer(void* AValue);

public unsafe void Test()
{
    int* a;
    int b = 0;

    a = (int*)VoidPointer(&b);
}

(这仅在 void 指针当然引用整数时才有效)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM