difference system() et execl()
alors j'utilise la fonction suivante pour declancher une commande du system :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
void launche(void)
{
if(flag == 0)
{
return;
}
if(fork()==0)
{
execl("/bin/ls", "ls", NULL);
}
else
{
flag = 0;
}
} |
mais si je remplace execl() par system() le programe présente une segmentation faulte ????
et je sais que system() ne remplace pas le context du process courant et execl() remplace le context du process courant par celui appellé.
Est ce que il y a d'autre différence?
Merci