Как получить IntPtr из byte [] в C#

Это должно работать, но должно c#-language использоваться в небезопасном c#-language контексте:

byte[] buffer = new byte[255];
fixed (byte* p = buffer)
{
    IntPtr ptr = (IntPtr)p;
    // do you stuff here
}

будьте осторожны, вы dotnet должны использовать указатель .net-framework в фиксированном блоке! Gc csharp может перемещать объект, когда visual-c# вы больше не находитесь в .net фиксированном блоке.

c#

.net

2022-10-29T19:57:38+00:00