Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.02.2010, 16:42   #1
IceBreaker
Пользователь
 
Аватар для IceBreaker
 
Регистрация: 03.02.2010
Сообщений: 20
По умолчанию Определить размер Pipe

Народ! Это не задание, просто я пока не довел прогу и интересно кто как ее на си напишет. нужно просто узнать размер pipe для вашей ос)

Жду ваших решений.
Shit happens
IceBreaker вне форума Ответить с цитированием
Старый 04.02.2010, 17:38   #2
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,210
По умолчанию

Цитата:
Это не задание, просто я пока не довел прогу и интересно кто как ее на си напишет
Ага, че лукавите-то? Так и скажите, что Вам надо, чтобы мы тут написали на С. Покажите Ваши наработки, за Вас врядли кто-то будет делать здесь.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 04.02.2010, 18:06   #3
IceBreaker
Пользователь
 
Аватар для IceBreaker
 
Регистрация: 03.02.2010
Сообщений: 20
По умолчанию

Хорошо, сейчас выложу.
Shit happens

Последний раз редактировалось IceBreaker; 04.02.2010 в 18:14.
IceBreaker вне форума Ответить с цитированием
Старый 04.02.2010, 18:20   #4
IceBreaker
Пользователь
 
Аватар для IceBreaker
 
Регистрация: 03.02.2010
Сообщений: 20
По умолчанию

Код:
#include <sys/types.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

int fsize(int fd[]){
        char *word;
        char *wordc;
        int j,i, size, size1;
        for(i=0; i<1000000; i++){
                for(j=0; j<i;j++)
                        word[j] = putchar(i);
                size = write(fd[1], word, i);
                if(size =! i){
                        printf("Can't write all string\n");
                        return i;
                        _exit;
                }
                size1 = read(fd[0], wordc, i);
                if(size =! i){
                        printf("Can't read all string\n");
                        return i;
                        _exit;
                }
        }
}

int main(){
        int fd[2], i=0;
        size_t size, size1;
        char *str;
        char resstr[14];

        if(pipe(fd) < 0){
                printf("Can't create pipe\n");
                return 0;
        }
                fsize(fd);
//      printf("%s\n",str);
        printf("Size = %d\n", i-1);
        if(close(fd[0]) < 0)
                printf("Can't close input stream\n");
        if(close(fd[1]) < 0)
                printf("Can't close output stream\n");
        return 0;
}
Shit happens
IceBreaker вне форума Ответить с цитированием
Старый 04.02.2010, 18:28   #5
IceBreaker
Пользователь
 
Аватар для IceBreaker
 
Регистрация: 03.02.2010
Сообщений: 20
По умолчанию

Не, ну тут совсем бредово.

Сейчас более осмысленный выложу:
Код:
#include <sys/types.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

int fsize(int fd[]){
        char word[100000];
        char wordc[100000];
        int j,i, size, size1;
        for(j=0; j<100000;j++)
                word[j] = putchar(j);
        size = write(fd[1], word, j);
        if(size =! j){
                printf("Can't write all string\n");
                return j;
                _exit;  
        }       
        size1 = read(fd[0], wordc, j);
        if(size =! j){
                printf("Can't read all string\n");
                return j;
                _exit;  
        }       

}

int main(){
        int fd[2];

        if(pipe(fd) < 0){
                printf("Can't create pipe\n");
                _exit;
        }
        if(close(fd[0]) < 0)
                printf("Can't close input stream\n");
        if(close(fd[1]) < 0)
                printf("Can't close output stream\n");
//      printf("%s\n",str);
        printf("Size = %d\n", fsize(fd));
        return 0;
}
Shit happens

Последний раз редактировалось IceBreaker; 04.02.2010 в 18:44.
IceBreaker вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Определить размер файла перед скачиванием. kalexi Работа с сетью в Delphi 12 17.02.2012 18:17
как программно определить размер файла более 2 гб VIR1435 Общие вопросы Delphi 6 27.12.2009 10:55
Как определить размер скрытого объекта? rolling JavaScript, Ajax 7 28.09.2009 19:39
Как определить размер кадра в AVI sun Общие вопросы C/C++ 1 18.11.2007 06:00