unsafe
byte*
은 알려진 길이의 기본 바이트 배열을 가리 킵니다. 어떻게하면 byte[]
으로 변환 할 수 있습니까? 이 목적을 위해 conversion constructor이 있기 때문에 제로 종료 기본 문자열을 가리키는 unsafe
sbyte*
안전하지 않은 바이트 *를 바이트 []로 변환
은 쉽게 C# string
로 변환 할 수 있습니다,하지만 난 byte[]
에 byte*
을 변환하는 간단한 방법을 찾을 수 없습니다.
byte[] arr = new byte[len];
Marshal.Copy((IntPtr)ptr, arr, 0, len);
을하지만 기본 메모리에 안전하지 않은 포인터 온 방법 궁금해 않습니다
은 기본적으로'byte []'가'const byte *'이어야합니까? 그래서 포인터를'* (myByte + index);와 같이 색인을 붙이려고 시도해보십시오. 그러나 쉽게 들으 려하지 않았 으면 좋겠다고 생각합니다 .... – Shark
'* (myByte + index)'를' myByte [index]'. 전환 할 필요가 없습니다. –
@HenkHolterman IPAddress의 생성자에 전달해야하므로 바이트 []로 변환해야합니다. – kol