ho dei problemi con una funzione che dovrebbe ordinare delle stringhe, credo di sbagliare con i puntatori.
codice:#include <stdio.h> #include <string.h> void chiedi_val(char (*ptr)[30]){ //funzione per inserimento stringa printf ("inserisci una stringa\n"); scanf("%s", ptr); } void ordina(char (*ptr)[30]){ //funzione che dovrebbe ordinare int k,i; char tmp[30]; k=4; while (k>0) for(i=0;i<4;i++){ if (strcmp( ptr[i], ptr[i+1])>0){ strcpy (tmp, ptr[i]); strcpy (ptr[i], ptr[i+1]); strcpy (ptr[i+1], tmp);} } k--; } void main(){ //main int i; typedef char vettore[30] ; vettore vettori[4]; for (i=0; i<4;i++){ chiedi_val( &vettori[i] ); } for (i=0; i<4;i++) printf ("%s\n",vettori[i]); printf("######################\n\n"); ordina(vettori); printf("######################\n\n"); for (i=0; i<4;i++) printf ("%s\n",vettori[i]); }

Rispondi quotando