diff --git a/TD3/ex5 b/TD3/ex5 index 5525f95..928bdb3 100644 Binary files a/TD3/ex5 and b/TD3/ex5 differ diff --git a/TD3/ex5.c b/TD3/ex5.c index ea2b6d8..dcb0029 100644 --- a/TD3/ex5.c +++ b/TD3/ex5.c @@ -5,15 +5,19 @@ #include #include -int main(int argc, char const *argv[]) +void main() { - char nom[50]; + /*char nom[50]; char prenom[50]; int res; printf("Saisissez votre nom suivi de votre prénom : "); res = scanf("%49s%49s", nom, prenom); if (res == 2) printf("Très bien %s %s\n", prenom, nom); - else + else + { printf("Vous avez fait une erreur lors de la saisie.\n"); + }*/ + + printf("Bonsoir Nom Prénom\n"); } \ No newline at end of file diff --git a/TD3/ex5_bis.c b/TD3/ex5_bis.c index eb1bbde..63e2d6a 100644 --- a/TD3/ex5_bis.c +++ b/TD3/ex5_bis.c @@ -5,7 +5,7 @@ #include #include -int main(int argc, char const *argv[]) +void main() { printf("Très bien\n"); } \ No newline at end of file diff --git a/TD3/ex5bis b/TD3/ex5bis index bc88a79..4844885 100644 Binary files a/TD3/ex5bis and b/TD3/ex5bis differ diff --git a/TD3/ex6 b/TD3/ex6 new file mode 100644 index 0000000..975b0e7 Binary files /dev/null and b/TD3/ex6 differ diff --git a/TD3/ex6.c b/TD3/ex6.c new file mode 100644 index 0000000..5ed481e --- /dev/null +++ b/TD3/ex6.c @@ -0,0 +1,53 @@ +#include +#include +#include +#include +#include +#include + +int main(int argc, char const *argv[]) +{ + int n; + if ((n = fork()) == 0) + { + // Fils 1 + // exécution programme ex5 + execve("./ex5bis", NULL, NULL); + printf("\n"); + // on attends on sait jamais + sleep(1); + exit(0); + } + else + { + if ((n > 0)) + { + // père + //printf("Père : Processus père avec PID : %i\n", getpid()); + + // Création de fils + int n2; + if ((n2 = fork()) == 0) + { + // Fils 2 + // exécution programme ex5 + execve("./ex5", NULL, NULL); + printf("\n"); + // on attends on sait jamais + sleep(1); + exit(0); + } + else if (n2 < 0) + { + printf("Erreur\n"); + return -1; + } + } + else + { + // Erreur + printf("Erreur de PID\n"); + return -1; + } + } +} \ No newline at end of file