Exportieren (0) Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

IntPtr.Add-Methode

.NET Framework 4.6 and 4.5

Addiert einen Offset zum Wert eines Zeigers.

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

public static IntPtr Add(
	IntPtr pointer,
	int offset
)

Parameter

pointer
Typ: System.IntPtr
Der Zeiger, zu dem der Offset addiert werden soll.
offset
Typ: System.Int32
Der Offset, der addiert werden soll.

Rückgabewert

Typ: System.IntPtr
Ein neuer Zeiger, der die Addition von offset zu pointer widerspiegelt.

Die Add-Methode löst keine Ausnahme aus, wenn das Ergebnis zu groß ist, um als Zeiger auf der angegebenen Plattform dargestellt zu werden. Stattdessen wird die Additionsoperation in einem ungeprüften Kontext ausgeführt.

Sprachen, die keine Operatorüberladung oder benutzerdefinierte Operatoren unterstützen, können diese Methode zum Hinzufügen eines Offsets mit dem Wert eines Zeigers verwenden.

Im folgenden Beispiel wird ein IntPtr-Objekt, das auf den Anfang eines Zehn-Elemente-Arrays zeigt, instanziiert. Anschließend wird die Add-Methode aufgerufen, um die Elemente im Array zu durchlaufen.


using System;
using System.Runtime.InteropServices;

public class Example
{
   public static void Main()
   {
      int[] arr = { 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 };
      unsafe {
         fixed(int* parr = arr) {
            IntPtr ptr = new IntPtr(parr);   
            for (int ctr = 0; ctr < arr.Length; ctr++)
            {
               IntPtr newPtr = IntPtr.Add(ptr, ctr * sizeof(Int32));
               Console.Write("{0}   ", Marshal.ReadInt32(newPtr));
            }
         }      
      }
   }
}
// The example displays the following output:
//       2   4   6   8   10   12   14   16   18   20


.NET Framework

Unterstützt in: 4.5.2, 4.5.1, 4.5, 4

.NET Framework Client Profile

Unterstützt in: 4

Portable Klassenbibliothek

Unterstützt in: Portable Klassenbibliothek

.NET für Windows Store-Apps

Unterstützt in: Windows 8

.NET für Windows Phone-Apps

Unterstützt in: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2015 Microsoft