Creo que no me explique muy bien.
En el ejemplo que te di, la funcion getPrimerVocal(char *); la funcion no crea memoria dinamica.
Solo queria ejemplificar que en este caso la funcion operaba sobre el parametro y te devolvia un puntero en funcion de dicho parametro.
Un ejemplo ams claro:
Código PHP:
char *getSegundaLetra(char *cadena)
{
return (cadena+1);
}
Es un ejemplo claro de uso de punteros sin memoria dinamica. A fin de cuentas una cadena estatica es equivalente a un puntero.
Nuestra funcio no regresa un caracter. regresa la direccion donde esta el caracter que le pedimos y como ya te habia mencionado, las cadenas son en cierta forma equivalente a los punteros entonces es como si te regresara una cadena de un numero desconocido de caracteres.
No se resuelvo tu duda.
Saludos