How to: Obtain a Pointer to Byte Array


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on

The latest version of this topic can be found at How to: Obtain a Pointer to Byte Array.

You can obtain a pointer to the array block in a Byte array by taking the address of the first element and assigning it to a pointer.

// pointer_to_Byte_array.cpp  
// compile with: /clr  
using namespace System;  
int main() {  
   Byte bArr[] = {1, 2, 3};  
   Byte* pbArr = &bArr[0];  
   array<Byte> ^ bArr2 = gcnew array<Byte>{1,2,3};  
   interior_ptr<Byte> pbArr2 = &bArr2[0];  

Using C++ Interop (Implicit PInvoke)