Форум программистов, компьютерный форум CyberForum.ru

Ошибка работы с сокетами - C++

Восстановить пароль Регистрация
 
fatalis
8 / 8 / 1
Регистрация: 09.08.2013
Сообщений: 68
22.09.2013, 12:39     Ошибка работы с сокетами #1
Есть массив размером 120 тысяч из структур по 8 байт.
И я пытаюсь передать его из клиента на сервер
C++
1
2
3
4
5
6
7
8
int sz=sizeof(points);//points статический,размер 960000
Point *data=points;
while(sz){
                int k=send(sock_desc,data,sz,0);
                if(k<0)perror("Error writing image");
                sz-=k;
                data+=k;
}
на стороне сервера следующий код
C++
1
2
3
4
5
6
7
8
9
10
        Point *buf=points;
        int sz=sizeof(points);
        while(sz>0)
        {
            int k=recv(socketFileDescriptor,buf,sz, 0);
            if(k<0){perror("k less than zero");break;}
            sz-=k;
            buf+=k;
            
        }
На сервере выбивает k less than zero: Bad address
Но при этом клиент продолжает работать.
В чем проблема,и что можно с этим поделать?

Добавлено через 11 часов 50 минут
Проблема решена.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.09.2013, 12:39     Ошибка работы с сокетами
Посмотрите здесь:

Ошибка при завершении работы программы C++
Ошибка на этапе выполнения работы C++
Динамические массивы. Ошибка в процессе работы программы. C++
C++ Ошибка при написание программы работы с файлами
C++ Ошибка работы деструктора
Работа с сокетами C++
C++ Ошибка в завершении работы программы
C++ Прекращение работы. Ошибка

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 07:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru