Форум программистов, компьютерный форум, киберфорум
Наши страницы

Посылка файла через sendto(...) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Передача указателя функции класса A в класс B http://www.cyberforum.ru/cpp-beginners/thread161311.html
Добрый день! Стоит задача вызывать функцию другого класса в потоке, ну что то типа этого: typedef void (t1::*PTR_FUN)(int); //указатель на не статическую class t1 { private: void...
C++ абстрактный базовый класс люди подскажите.есть абстрактный базовый класс можно ли в нем определить конструктор копирования? написал в компиляторе,получается,что можно,но не понимаю почему? если нельзя создавать объект... http://www.cyberforum.ru/cpp-beginners/thread161310.html
Обработка адреса DNS и IP из коммандной строки C++
Имеется ли функция которая исходя из полученного аргумента будет использовать подходяшую функцию? Т.е. если argv == "localhost" то будет использоваться: clientserver.sin_addr.s_addr =...
C++ Шифрование файлов произвольного типа
возникла проблема при шифровании: txt файлы шифрует нормально но остальные типы(png) не хочет вот код файл SD.h #include <stdio.h> #ifndef __SD #define __SD class SD { public:
C++ Переменная в динамической памяти http://www.cyberforum.ru/cpp-beginners/thread161261.html
class SimpleCircle { public: SimpleCircle (); //Basic constructor SimpleCircle (int radius); //Constructor with parameters void SetRadius (int r); //Radius set function void operator++...
C++ С базовым курсом разобрался, переходим на оконные приложения. Пол года долбал базовый курс (все о консоли) и считаю что пора перейти на уровень выше. Нашел на майкрософте маленький гайд по созданию оконных приложений. Ниже будет оконное приложение представлено... подробнее

Показать сообщение отдельно
accept
4825 / 3246 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
25.08.2010, 03:27
нет, нужно читать из файла в буфер, а потом буфер посылать
поначалу можно сделать чтение символа и посылку символа, но это затратно, так как sendto() - системный вызов

C
1
2
3
4
5
6
7
8
9
    int c;
 
    ...
 
    while ((c = getc(ifp)) != EOF)
        if (send(sockd, (char *) &c, 1, 0) < 0) {
            fprintf(stderr, "error" "\n");
            break;
        }
с буфером сложнее, так как файл может закончиться на последней порции, считанной в буфер, но её тоже нужно отправить
при этом, её может и не быть, так как в редких случаях, размер файла может быть кратен буферу
то есть требуется как допольнительная отправка, так и проверка перед этой допольнительной отправкой, нужно ли там отправлять
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru