Poul Опубликовано 13 апреля, 2014 Жалоба Поделиться Опубликовано 13 апреля, 2014 Добрый вечер. Не могу решить задачу, может кто подскажет в чем ошибка? ./pr1<f.dat>f.rez #include <sys/types.h>#include <sys/stat.h>#include <sys/wait.h>#include <unistd.h>#include <stdio.h>#include <fcntl.h>#include <stddef.h>#include <stdlib.h>#include <errno.h>int main(int argc, char *argv[]) { printf("Число переданных параметров программе %s = %d\n", argv[0], argc); int p = fork(); if (p == -1) { perror("error fork"); exit(1); } else if (p == 0) { int fdr = open(argv[2], O_WRONLY); if (fdr == -1) { perror("error file for read"); exit(2); } dup2(fdr, 1); close(fdr); execlp("argv[0]", "argv[0]", "argv[1]", NULL); } else { wait(NULL); /*int fdw = open(argv[2], O_WRONLY | O_CREAT, 0666); if (fdw == -1) { perror("error file for write"); exit(3); } dup2(fdw, 1); close(fdw); execl("argv[1]", "argv[1]", "argv[2]", NULL); perror("error"); exit(4);*/ } return 0;} Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Firebird Опубликовано 13 апреля, 2014 Жалоба Поделиться Опубликовано 13 апреля, 2014 А что задача делать должна-то? И в чем вернее конкретно вопрос? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.