Si eso es lo que decía, lo único que me pasaba es que no había reservado espacio para los punteros a char y si para cada uno de los elementos char, es decir había hecho probes = (char *) malloc( 51 * sizeof(char) ); pero no probes = (char **) malloc( 10 * sizeof (char *) );. Finalmente me di cuenta, de todos modos muchas gracias, no había contemplado la posibilidad de comprobar si malloc da error, y como no me quiero parecer a Microsoft lo haré, muchas gracias!