Marshal.UnsafeAddrOfPinnedArrayElement<T> Method (T[], Int32)

[Supported in the .NET Framework 4.5.1 and later versions]

Gets the address of the element at the specified index in an array of a specified type.

Namespace:  System.Runtime.InteropServices
Assembly:  mscorlib (in mscorlib.dll)

public static IntPtr UnsafeAddrOfPinnedArrayElement<T>(
	T[] arr,
	int index

Type Parameters


The type of the array.


Type: T[]

The array that contains the desired element.

Type: System.Int32

The index of the desired element in the arr array.

Return Value

Type: System.IntPtr
The address of index in arr.

The array must be pinned by using a GCHandle before it is passed to this method. For maximum performance, this method does not validate the array passed to it; this can result in unexpected behavior.

.NET Framework

Supported in: 4.6, 4.5.1

Supported in: Windows Phone 8.1

  • SecurityCriticalAttribute 

    requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
© 2015 Microsoft