Index pointer : Pointer « unsafe « C# / CSharp Tutorial






using System; 
 
class MainClass { 
  unsafe public static void Main() { 
    int[] nums = new int[10]; 
 
    
    Console.WriteLine("Index pointer like array."); 
    fixed (int* p = nums) { 
      for(int i=0; i < 10; i++)  
        p[i] = i; // index pointer like array 
 
      for(int i=0; i < 10; i++)  
        Console.WriteLine("p[{0}]: {1} ", i, p[i]); 
    } 
 
  } 
}
Index pointer like array.
p[0]: 0
p[1]: 1
p[2]: 2
p[3]: 3
p[4]: 4
p[5]: 5
p[6]: 6
p[7]: 7
p[8]: 8
p[9]: 9








36.3.Pointer
36.3.1.Declaring a Pointer
36.3.2.IntPtrs and unsafe bit-twiddling
36.3.3.The & is a unary operator that returns the memory address of its operand
36.3.4.Use fixed to put address of value into a pointer
36.3.5.Demonstrate the effects of pointer arithmethic
36.3.6.An array name with an index yields a pointer to the start of the array
36.3.7.Index pointer
36.3.8.Pointer arithmetic
36.3.9.Get a pointer to the start of a string and display the contents of string via pointer
36.3.10.Pointer of a pointer
36.3.11.Assign value of myInt using pointer
36.3.12.Safe Swap
36.3.13.Unsafe swap
36.3.14.C# Pointer Operators
36.3.15.Modifying an Immutable String with Pointer
36.3.16.Pointer Arithmetic