#include ... 
 ...
void main()
{
   int d[2];
   int status;
   char buf[32];
   pipe(d);
   if(fork()==0)
   {
      close(1);
      close(d[0]);
      dup(d[1]);
      close(d[1]);
      printf("Message\n");
      close(1);
      exit(0);
   }
   else
   {
      close(d[1]);
      wait(&status);
      read(d[0],buf,32);
      printf("%s\n",buf);
      close(d[0]);
      exit(0);
   }
}
у меня какая-то бяка выводится, а должно быть по идее "Message"
Посмотрите кому не лень. Может я чего пропустил? 
    
      Ответ на:
      
          комментарий
        от fendor 
  
    
      Ответ на:
      
          комментарий
        от fendor 
  
    
      Ответ на:
      
          комментарий
        от Die-Hard 
  
    
      Ответ на:
      
          Вопрос открыт
        от anonymous 
  
    
      Ответ на:
      
          комментарий
        от anonymous 
  
    
      Ответ на:
      
          комментарий
        от anonymous 
  
    
      Ответ на:
      
          комментарий
        от anonymous 
  
    
        Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
      
Похожие темы
- Форум Непонимаю я как открыть пайп (2014)
 - Форум Канал загадок (2007)
 - Форум помогите немогу понять куда девается stdout (2009)
 - Форум Чтение выхлопа процесса без ожидания его завершения (2019)
 - Форум Реализация конвейра (2019)
 
- Форум перенаправление вывода (2002)
 - Форум [pipe] ftp не хочет общатся через два пайпа (2009)
 - Форум non-blocking write (2011)
 - Форум Необычное поведение при использовании каналов из <unistd.h> (2016)
 - Форум fork + popen. Залипание на wait при SIGCHLD (2019)