我正在尝试使用管道制作一个简单的程序。程序必须请求父级中的整数数组,并将其发送给子级,子级必须对数组进行排序并将其发送回父级。问题是,在通过管道发送后,我不确定如何读取孩子中的数组值。
按照我的代码:
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
int main() {
int fd[2];
pid_t pid;
/* Verifica se ocorreu erro (-1) ao criar o PIPE */
if(pipe(fd) == -1){
perror("pipe");
exit(1);
}
/* Verifica se o fork foi realizado com sucesso > 0 */
if((pid = fork()) < 0){
perror("fork");
exit(1);
}
if(pid > 0){
printf("-----------------------------------------------\n");
printf(" PROCESSO PAI \n");
printf("-----------------------------------------------\n");
/* Como vamos ESCREVER do lado do PAI, fechamos a LEITURA */
close(fd[0]);
int numeros[5];
for (int i = …Run Code Online (Sandbox Code Playgroud)