gpt4 book ai didi

c# - 在 C# 中将指向结构的指针作为函数参数传递

转载 作者:太空宇宙 更新时间:2023-11-03 11:42:53 25 4
gpt4 key购买 nike

如何在 C# 中将指向结构的指针作为函数参数传递?

我正在尝试使用 DLL 中的函数,该函数的参数之一是双指针。例如,

struct mystruct
{
int a;
char b;
};

[DllImport("mydll.dll")]
private static extern int func_name(int a, char b, mystruct** c);

我想使用像 int *a 这样的指针的正确方法是 ref int aint **a 有类似的东西吗?

最佳答案

指向指针的指针的 CLR 等价物是 ref IntPtr

IntPtr是一个指向整数的指针,当您通过 ref 传递它时,它通过引用传输,使其成为指向指针的指针。

您可能还需要使用 Marshal.PtrToStructure method将指针转换为您的结构对象。

请参阅 this article 底部附近标题为“手动编码”的部分获取更多信息。

关于c# - 在 C# 中将指向结构的指针作为函数参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4255371/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com