Вопрос по информатике:
90Б. Помогите разработать две простых программы на языке С под Linux:
1.Составьте UNIX программу на языке С, порождающую дочерний процесс и получающую от него данные по именованному каналу.
2.Составьте UNIX-программу на языке С, запускающую в качестве дочернего процесса другую программу и переназначающую ее стандартный вывод на вывод в файл.
- 09.01.2016 13:08
- Информатика
- remove_red_eye 8462
- thumb_up 29
Ответы и объяснения 1
#include
#include
#include
const int size = 100;
int main()
{
int fd[2];
char inf_to_send[size];
scanf("%s", inf_to_send);
pid_t p = fork();
pipe(fd);
if (p > 0) {
close(fd[0]);
write(fd[1], inf_to_send, size);
printf("Parent(%d) send str: %s\n", getpid(), inf_to_send);
close(fd[1]);
} else {
close(fd[1]);
read(fd[0], inf_to_send, size);
printf("Child(%d) received str: %s\n", getpid(), inf_to_send);
close(fd[0]);
}
}
- 01.01.1970 00:00
- thumb_up 43
Знаете ответ? Поделитесь им!
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи - смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.