Sometimes a function needs to modify a value instead of returning a new one.
#include <stdio.h>
void triple( int *n ) {
*n = *n * 3;
}
int main( void ) {
int widgets = 14;
int dongles = 37;
int * countp;
printf( "widgets = %d, dongles = %d\n", widgets, dongles );
countp = &widgets;
triple( countp );
countp = &dongles;
triple( countp );
printf( "widgets = %d, dongles = %d\n", widgets, dongles );
return 0;
}
widgets = 14, dongles = 37 widgets = 42, dongles = 111TOC | Prev | Next