using System; public class runme { static void Main() { int[] source = { 1, 2, 3 }; int[] target = new int[ source.Length ]; example.myArrayCopy( source, target, target.Length ); Console.WriteLine( "Contents of copy target array using default marshaling" ); PrintArray( target ); target = new int[ source.Length ]; example.myArrayCopyUsingFixedArrays( source, target, target.Length ); Console.WriteLine( "Contents of copy target array using fixed arrays" ); PrintArray( target ); target = new int[] { 4, 5, 6 }; example.myArraySwap( source, target, target.Length ); Console.WriteLine( "Contents of arrays after swapping using default marshaling" ); PrintArray( source ); PrintArray( target ); source = new int[] { 1, 2, 3 }; target = new int[] { 4, 5, 6 }; example.myArraySwapUsingFixedArrays( source, target, target.Length ); Console.WriteLine( "Contents of arrays after swapping using fixed arrays" ); PrintArray( source ); PrintArray( target ); } static void PrintArray( int[] a ) { foreach ( int i in a ) Console.Write( "{0} ", i ); Console.WriteLine(); } }