Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Программирование под *nix > C++ на Unix
Перезагрузить страницу Как работать с командой команда write()
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
Булочка Булочка вне форума
Member
 
Сообщений: 18
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 17.05.2007
По умолчанию Как работать с командой команда write() - 05.04.2010, 15:53

Здравствуйте, помогите переделать задачку. Задание:с помощью команды write() попытка записать в канал связи меньше байт, чем осталось до его заполнения. Ьез блокировок. Исходная задачка ниже.

С помощью команды WRITE(): Попытка записать в канал связи больше байт, чем осталось до его заполнения. Блокировка вызова разрешена.

Код:
#include <fcntl.h>
#include <sys/types.h>
#include <stdio.h>
#include <unistd.h>
#include <errno.h>
int main()
{

size_t n,m;
int flags, buf=8192;
char str[15]="abc";
int fd[2];

f(pipe(fd)<0)
{
printf("Pipe not created!\n");
};
printf("Pipe created!\n");
if ((flags=fcnt(fd[0], F_GETFL,0))<0
  printf("Get flags not succes!\n");
flags &=~O_Nonblock;
if(fcnt(fd[0],F_SETFL, flags)<0)
  printf("Set flags succes!\n);
int i;
for (i=0; i<(buf+2); i++)
  n = write(fd[1], str, 1);
if (errno == EWOULDBLOCK)
{
  printf("Write not succes: no more space in pipe\n");
  exit(-1);
}
close(fd[1]);
printf("/nClosed file succes\n");
}

Заранее спасибо))
Ответить с цитированием
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Какой командой заполнить массив bar weryngton С/С++ 2 21.01.2010 19:04
Как работать с командой int limit Insomnia1 C++ Builder 2 19.07.2009 21:44
Процедура Write в Delphi 7 Виталик 1 Delphi 10 25.07.2008 11:51
Команда delete и pos как с ними работать Route Delphi 1 11.02.2006 10:51
Работа с командой int в С++ wils0n Вопросы начинающих программистов 11 09.12.2005 23:43
Работа с командой template Senters Вопросы начинающих программистов 4 05.05.2005 20:22
Перестает функциклировать функция JavaScript write c0ns0l3 DHTML, JavaScript, VBScript 3 27.03.2005 14:04
Document.write запись в один документ Rax DHTML, JavaScript, VBScript 2 12.05.2004 21:56
Write/Read Console как правильно использовать эти функции St@lker WinAPI 2 24.03.2004 04:47
write и char создание программного кода Rem Visual C++ 6 19.01.2004 15:02
Кодировка во write как с ней работать pav DHTML, JavaScript, VBScript 1 11.04.2003 21:19
Почему Билдер выдет ошибку Write on adrres 0000 Anonymous C++ Builder 5 29.03.2003 18:52



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов