[ create a new paste ] login | about

Link: http://codepad.org/6PXBeZlY    [ raw code | output | fork ]

C, pasted on Oct 27:
#include "stdio.h"

void change_array( void * the_array );

int main()
{
int arr[ 4 ] = { 1, 2, 3, 4 };

printf( "Before:\n%d | %d | %d | %d\n", arr[ 0 ], arr[ 1 ], arr[ 2 ], arr[ 3 ] );
change_array( arr );
printf( "After:\n%d | %d | %d | %d\n", arr[ 0 ], arr[ 1 ], arr[ 2 ], arr[ 3 ] );

return( 0 );
}

void change_array( void * the_array )
{
int * arr_ptr = ( int * )the_array;
printf( "In the changing function:\n%d | %d | %d | %d\n", arr_ptr[ 0 ], arr_ptr[ 1 ], arr_ptr[ 2 ], arr_ptr[ 3 ] );
arr_ptr[ 0 ]  = 5;
arr_ptr[ 1 ]  = 6;
arr_ptr[ 2 ]  = 7;
arr_ptr[ 3 ]  = 8;
}    

    


Output:
1
2
3
4
5
6
Before:
1 | 2 | 3 | 4
In the changing function:
1 | 2 | 3 | 4
After:
5 | 6 | 7 | 8


Create a new paste based on this one


Comments: