codice:
#include <string.h>
#include <stdio.h>

void trim(char *stringa)
{	// Riceve il puntaore ad una stringa e restituisce il puntatore alla stringa mod
	
	char *p;	// Dichiara il puntatore all'ultimo carattere della stringa in input
	/* Imposta p all'ultimo elemento prima del carattere di fine stringa di stringa */
	p = stringa + strlen(stringa) -1;
	/* Finchč il valore puntato da p č uno spazio e l'indirizzo contenuto in p non coincide con l'inizio 
	   stringa */
	while((*p == ' ') && (p != stringa) ) // <<< Mancava una parentesi tonda ! )
		// Questo era l'errore >>>*(p+1)<<< non decrementava il puntatore p !
		// Ed il prog si bloccava...
		*(p--) = '\0';
}

//

int main()
{
	char s[25] = "stringa    ";
	int count=0;
	while(s[count] != '\0')
		count++;
	
	printf("La stringa s contiene la parola: \"%s\" ed e' formata da %d caratteri\n\n", s, count);
	printf("CHIAMO LA FUNZIONE trim() ED ELIMINO GLI SPAZI A DESTRA\n\n");

	// Non č possibile passare un stringa per valore* quindi...
	trim(s);
	
	count=0;
	while(s[count] != '\0')
		count++;
	printf("Ora la stringa s contiene la parola: \"%s\" ed e' formata da %d caratteri\n\n", s, count);

	return 0;
}