Crear codigo ejecutable desde un programa en C.
Publicado por wdiluve (31 intervenciones) el 11/09/2004 15:35:02
Hola y de antemano gracias.
Utilizo, Fedora Core2, gcc 3.3
Bueno, La pregunta consiste en lo siguiene es posible desde un programa realizado en C, y que ya esta en ejecucion crear nuevo codigo y que este se pueda ejecutar desde el programa en ejecucion; si esto es posible me seria de gran ayuda un manual o jemplos de como hacerlo.
Ejemplo.
fichero principal.c
fun1()
{
printf("escribiendo el codigo de la nueva funcion");
/*En esta parte irian las instrucciones necesarias para crear el codigo de la nueva funcion, la cual se llamaria fun2, luego debo poder ejecutar fun2*
}
main()
{
fun1();
}
Descripcion del ejemplo:
1- dentro del fichero principal.c solo esta el codigo correspondiente al main y a fun1.
2- desde fun1 necesito crear el codigo correspondiente a fun2 y poder ejecutar este.
3- fun2 debe ser una funcion.
fun2()
{
printf("El codigo correspondiente a fun2 no existe en el fichero principal.c debe construirce una vez ejecuta el ejecutable correspondiente");
}
Utilizo, Fedora Core2, gcc 3.3
Bueno, La pregunta consiste en lo siguiene es posible desde un programa realizado en C, y que ya esta en ejecucion crear nuevo codigo y que este se pueda ejecutar desde el programa en ejecucion; si esto es posible me seria de gran ayuda un manual o jemplos de como hacerlo.
Ejemplo.
fichero principal.c
fun1()
{
printf("escribiendo el codigo de la nueva funcion");
/*En esta parte irian las instrucciones necesarias para crear el codigo de la nueva funcion, la cual se llamaria fun2, luego debo poder ejecutar fun2*
}
main()
{
fun1();
}
Descripcion del ejemplo:
1- dentro del fichero principal.c solo esta el codigo correspondiente al main y a fun1.
2- desde fun1 necesito crear el codigo correspondiente a fun2 y poder ejecutar este.
3- fun2 debe ser una funcion.
fun2()
{
printf("El codigo correspondiente a fun2 no existe en el fichero principal.c debe construirce una vez ejecuta el ejecutable correspondiente");
}
Valora esta pregunta


0