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