Hola Italico76:
Pues realmente lo que hace la función es retornar false y no hacer nada, o si no se da la condición de false modificar la cadena y retornar true. Al ser los cambios permantentes cuando se manipula la cadena pasada como parámetro, entonces la secuencia de la función es:
1.- ¿Es false? Retorno false y adiós.
2.- ¿No lo era? Manipulo la cadena y retorno true.
Y ya en main obtengo:
O bien un valor false y la cadena sin manipular
O bien un valor true y la cadena manipulada.
P.D. Que yo soy un zoquete, lo que pasa es que este ejercicio lo hice en su momento, y me costó tanto o mas que lo que le está costando a jscmanuel