Cita:
Iniciado por HackmanC -- Alvarodt dice que no funciona la función system() en su compilador.
-- Tu dices que no use la función system(), aunque funciona igual de sencillo. (Me inmagino que al indicar que no use system, y aconsejar la librería #include <sys/types.h> te referías a crearlo con fork y execXX)
No he dicho eso, perdona.
He dicho que no use system() en general si lo que necesita es controlar la creación de procesos.
Lo de que funciona igual de sencillo, me refería a que en cualquier sistema operativo system() debe funcionar exactamente igual (aunque te empeñes en mirar la implementación), NO que system() sea igual que sencillo que las funciones particulares de un sistema operativo para la creación de procesos (como fork() y exec..() en muchos sistemas).
Cita: -- Yo digo que use fork, execXX y wait, que no es igual de fácil pero es lo mismo. (Según el manual de programador de Linux de GNU project, system() hace una llamada a fork y execXX)
Nos da exactamente igual la implementación de la llamada a system(), que en cada sistema será diferente.
Sobre si es más difícil o no, no puedes asegurarlo puesto que esas funciones no son ANSI C (que parece la causa de todo tu error, el creer semejante afirmación).
Cita: -- En base a la requisito inicial y según Alvarodt que no le funciona system(). -- Yo aconsejaba usar fork, execXX ... etc. que es ANSI C, igual a system(); y es algo común de hacer.
Como ya te he dicho antes, eso de que fork() y las exec..() son ANSI C lo dirás tú.