Mi si è presentato questo codice, un po curioso devo dire, perchè mi sono imbattuto in una cosa nuova...ovvero:
#include <stdio.h>
#define SIZE 10
void whatIsThis(int [], int);
main()
{
int total, a[SIZE] = {32,27,64,18,95,14,90,70,60,37};
printf("I valori sono:\n\n");
whatIsThis(a, SIZE);
printf("\n");
return 0;
}
void whatIsThis(int b[], int size){
if(size > 0){
whatIsThis(&b[1], size - 1);
printf("%d ", b[0]);
}
}
non mi è chiaro il funzionamento di questa parte: whatIsThis(&b[1], size - 1);
in pratica l'algoritmo si fonda su uno spostamento di valori...dato da un operatore di assegnamento su un vettore...è la prima volta che mi capita di vederlo al difuori di uno scanf..ma se non ho capito male, essendo tutto riconducibile ad una ricorsione, assegna all'elemento 1 del vettore, il valore di b size - 1??cioè, 37...e nel secondo come va??