Как преобразовать IntPtr
в массив. На самом деле я вызвал функцию из неуправляемой dll. Он возвращает IntPtr
. Теперь мне нужно преобразовать его в массив. Пожалуйста, пусть кто-нибудь придумает. Ниже приведен фрагмент кода.Как преобразовать IntPtr в массив?
Unmanaged function declared
[DllImport("NLib.dll", CallingConvention = CallingConvention.Cdecl)]
public static extern unsafe IntPtr N_AllocPt1dArray(NL_INDEX n, ref stacks S);
Вызов функции
void Function1()
{
IntPtr PPtr=N_AllocPt1dArray(n, ref S);
}
Теперь мне нужно, чтобы преобразовать PPtr
в массив (массив demo[]
) .где демо определяется
public unsafe struct demo
{
public int x ;
public int y ;
public int z ;
}demo DEMO;
Возможный дубликат [Получение массива структуры из IntPtr] (http://stackoverflow.com/questions/6747112/getting-array-of-struct-from-intptr) – tafa