中易网

C# 有个函数参数为intptr类型,而我有个数组byte[] 数组

答案:2  悬赏:20  
解决时间 2021-01-11 11:11
  • 提问者网友:人生佛魔见
  • 2021-01-10 16:16
C# 有个函数参数为intptr类型,而我有个数组byte[] 数组
最佳答案
  • 二级知识专家网友:往事埋风中
  • 2021-01-10 17:44
最简单的方法
unsafe {
  fixed(byte* pointer = array) {
    IntPtr pArray = new IntPtr(pointer);
  }
}略纠结的办法

IntPtr pArray = Marshal.UnsafeAddrOfPinnedArrayElement(array, 0);用这种方法需要维持array的引用 否则会被gc回收
全部回答
  • 1楼网友:山君与见山
  • 2021-01-10 18:00
我暂时保留我的看法!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息