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

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

Вернуться   Форум программистов > C/C++ программирование > C/C++ Сетевое программирование
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.05.2011, 17:47   #1
vaan.sk
Пользователь
 
Аватар для vaan.sk
 
Регистрация: 10.03.2010
Сообщений: 30
По умолчанию Проблема с чатом (серверная часть)

Делаю чат на С++. Появилась проблема, билдер с++ (борланд 6) пишет следующие ошибки

undefinded structure 'sockaddr_in'
size of 'san' is unkown or zero


Код:
Делаю чат на С++. Появилась проблема, билдер с++ (борланд 6) пишет следующие ошибки

undefinded structure 'sockaddr_in'
size of 'san' is unkown or zero

Код:
//---------------------------------------------------------------------------

#include <vcl.h>
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<string.h>
#include<dos.h>

//---------------------------------------------------------------------------

        enum {SRV_PORT=0x7778,BUFSIZE=256};
int main(int argc, char* argv[])
{
        int sock, clnsock; 
        char ibuf[BUFSIZE], obuf[BUFSIZE];
        struct sockaddr_in san;
        //Создание серверного сокета
        if ((sock=socket(PF_INET,SOCK_STREAM,0))!=-1)
                { sin_family = AF_INET;
                  san.sin_port = htons (SRV_PORT)
                  san.sin_addr.s_addr=htone(IN.ADDE_LOOPBACK);
        //привязка адреса и перевод в серверный режим
        if (bind(sock,(structsock_addr*)&san,sizeof(san))==0 && listen (sock,1)==0)
                {//принмимаем соединение
                        if (clnsock=accept(sock,NULL,0))!=-1)
                                { //получение запроса
                                        if (recv (clnsock, ibuf, sizeof(ibuf),0)>0)
                                                {//форм. рез-т.
                                                        strcat (strcpy(obuf,ibuf),ibuf);
                                                        //send message
                                                        send (clnsock, obuf, strlen(obuf)+1,0);
                                                        close (clnsock);
                                                }
                                }
                                close(sock);
                }
                return 0;

}
//---------------------------------------------------------------------------
помогите исправить данный код
помогите исправить данный код

Последний раз редактировалось vaan.sk; 24.05.2011 в 17:53.
vaan.sk вне форума Ответить с цитированием
Старый 24.05.2011, 20:25   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

может стоит подключит винсок заголовок, где описана эта структура?
p51x вне форума Ответить с цитированием
Старый 24.05.2011, 20:58   #3
vaan.sk
Пользователь
 
Аватар для vaan.sk
 
Регистрация: 10.03.2010
Сообщений: 30
По умолчанию

Да решил уже давно, спс

теперь вот только такие ошибки
[C++ Error] srv.cpp(25): E2034 Cannot convert 'sock_addr *' to 'const sockaddr *'
[C++ Error] srv.cpp(25): E2342 Type mismatch in parameter 'name' (wanted 'const sockaddr *', got 'sock_addr *')


в строке
Код:
 if (bind(sock,(struct sock_addr*)&san,sizeof(san))==0 && listen (sock,1)==0)
что ему не нравится?
vaan.sk вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Jquery Autocomplete (Remote Datasource) серверная часть cobria2 PHP 2 17.04.2011 21:44
Нужна программа под OS Simbian + серверная часть kopiuyt Фриланс 0 26.11.2010 01:26
узнать IP компьютера, на котором находится серверная часть DartMrakkk Работа с сетью в Delphi 5 02.01.2008 16:55