int i;
# 18 "pass_by_name_vs_pass_by_value.c"
int three_times( int a )
{
int total = 0;
total += a;
++i;
total += a;
++i;
total += a;
return total;
}
int main( )
{
int array[] = {1,2,3};
i = 0;
printf( "pass by name: %d\n" , ({ int total = 0; total += array[i]; ++i; total += array[i]; ++i; total += array[i]; total; }) );
i = 0;
printf( "pass by value: %d\n" , three_times(array[i]) );
return 0;
}