Non riesco a capire per quale motivo e' stato usato un puntatore per dichiarare la funzione foo(). i puntatori a funzione servono quando il programma deve scegliere quale funzione chiamare fra diverse possibili, e la scelta non é definita a priori ma dipende dai dati del programma stesso. Ma qui l'uso della funzione foo () non serve solo per stampare un array con i numeri ordinati da 0 a 1. Perché poi utilizzare una malloc se si già che avrò bisogno di un array di 10 elementi ? Grazie mille in anticipo e come al solito scusate se le domande sono stupide !codice:#include <stdio.h> 0015 #include <stdlib.h> 0016 0017 int* foo() { 0018 int i, *v = (int*) malloc( 10*sizeof(int) ); 0019 for ( i=0; i < 10; i++ ) 0020 v[i] = i; 0021 return v; } 0022 0023 0024 int main() { 0025 int *v = foo(); 0026 free(v); 0027 return 0; 0028 }