Muchas gracías estaba algo confuso con malloc ya creo que entiendo su funcionamiento.
Solo una cosa mas, ¿si no uso fflush(); podría generarse fallos en el programa?, es que he leido mucho en este foro, incluso un post de cosas que no se deben hacer, y una de ellas es utilizar fflush(), desde entonces no me hace gracia usarlo xD