Index a pointer as if it were an array

image_pdfimage_print

/*
C#: The Complete Reference
by Herbert Schildt

Publisher: Osborne/McGraw-Hill (March 8, 2002)
ISBN: 0072134852
*/

// Index a pointer as if it were an array.

using System;

public class PtrIndexDemo {
unsafe public static void Main() {
int[] nums = new int[10];

// index pointer
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]); } // use pointer arithmetic Console.WriteLine(" Use pointer arithmetic."); fixed (int* p = nums) { for(int i=0; i < 10; i++) *(p+i) = i; // use pointer arithmetic for(int i=0; i < 10; i++) Console.WriteLine("*(p+{0}): {1} ", i, *(p+i)); } } } [/csharp]