Ver Mensaje Individual
  #2 (permalink)  
Antiguo 06/06/2005, 11:20
MaxExtreme
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años, 1 mes
Puntos: 17
El problema es que strcat encadena la cadena del puntero del segundo parámetro a la cadena que apunta el primer parámtro, y devuelve también éste. Lo que tienes que hacer es primero obtener el tamaño total que te ocupará toda la cadena para las tres posibilidades, después conseguir memoria con malloc, copiar f_in a todas ellas y por último encadenar la cadena a éstas. El último detalle es que tus f1, f2 y f3 son locales, no consigues nada con ello.

Después devolverlos con una estructura o pasando éstos en los argumentos con un puntero a puntero char (char ** f1).

Si no quieres usar memoria dinámica, te queda la opción de pasar punteros en los argumentos a memoria ya asignada como los arrays.