Ciao a tutti,
stavo cercando di capire come funzionano questi puntatori a funzioni ma non ho ancora trovato documenti che lo spieghino con esempi facili. Supponiamo che io ho un array e che voglio applicare ad ogni elemento di questo una funzione( ad esempio che somma all'elemento semplicemente 1 ), come la realizzio? Io ho scritto una cosa cosi':
codice:
#include <stdio.h>
#define N 5
int f( int* a )
{
int i;
for( i = 0; i < N; i++ )
a[i]++;
}
void applica( int *array, int (*f)( int* ) )
{
f( array );
}
int main( int argc, char **argv )
{
int array[5];
int i;
for( i = 0; i < N; i++ )
array[i] = i;
for( i = 0; i < N; i++ )
fprintf( stdout, " %d ", array[i] );
applica( array, f( array ) );
char t;
fscanf( stdin, "%c", &t );
}
ovviamente non funziona , e manco compila