From: Jérôme Benoit Date: Tue, 30 May 2017 21:52:10 +0000 (+0200) Subject: Respect the asked string format for stdout message passing between X-Git-Url: https://git.piment-noir.org/?p=TD_IML.git;a=commitdiff_plain;h=8253f7ac0ca070ecf0cfdaceeb90617083aec0c5 Respect the asked string format for stdout message passing between child and parent processes. Signed-off-by: Jérôme Benoit --- diff --git a/TD1/part_two/exo.c b/TD1/part_two/exo.c index 0194d04..bb6f3a5 100644 --- a/TD1/part_two/exo.c +++ b/TD1/part_two/exo.c @@ -25,6 +25,7 @@ int main() { exit(EXIT_FAILURE); }; + const char* str_fmt = "[%d] Coucou papa !\n"; pid_t cpid = fork(); if (cpid == -1) { @@ -33,21 +34,16 @@ int main() { } else if (cpid == 0) { printf("Fils:\n"); show_proc_pids(); - const char* msg = "Coucou papa !"; close(pipefd[0]); - write(pipefd[1], msg, strlen(msg)); + write(pipefd[1], str_fmt, strlen(str_fmt)); close(pipefd[1]); exit(EXIT_SUCCESS); } else { printf("Parent:\n"); show_proc_pids(); close(pipefd[1]); - - while (read(pipefd[0], &buf, 1) > 0) { - write(STDOUT_FILENO, &buf, 1); - } - - write(STDOUT_FILENO, "\n", 1); + read(pipefd[0], &buf, strlen(str_fmt)); + printf(&buf, getpid()); close(pipefd[0]); wait(NULL); exit(EXIT_SUCCESS);