Работа с сокетами

Тема в разделе "MS Visual C++", создана пользователем shisik, 1 сен 2007.

  1. shisik

    shisik Well-Known Member

    Регистрация:
    26 авг 2007
    Сообщения:
    154
    Симпатии:
    0
    Начинаю изучать сокеты, и сразу же появилась проблема. Простейший код
    Код (Text):
    WSADATA ws;
    WSAStartup(MAKEWORD(1, 1), &ws);
    SOCKET s;
    s = socket(AF_INET, SOCK_STREAM, 0);
    sockaddr_in s_addr;
    Вызывает ошибку error C2143: syntax error : missing ';' before '.' на последней строке (точнее, две такие ошибки подряд на одной и той-же строке). Я всего лишь объявил переменную типа sockaddr_in, а он ругается. Даже просто
    Код (Text):
    #include "winsock2.h"

    int main(int argc, char* argv[])
    {
    sockaddr_in s_addr;

    return 0;
    }
    выдаёт две такие ошибки. Вопрос: почему?
    И ещё. Везде написано (и в winsock2.h тоже), что sockaddr_in - структура. Почему в моём cpp-файле она видна как класс?
     
  2. European

    Регистрация:
    4 сен 2006
    Сообщения:
    2.580
    Симпатии:
    0
    <!--QuoteBegin-shisik+1:09:2007, 19:15 -->
    <span class="vbquote">(shisik @ 1:09:2007, 19:15 )</span><!--QuoteEBegin-->что sockaddr_in - структура. Почему в моём cpp-файле она видна как класс?
    [snapback]77031" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    Ну структура и класс очень близкие вещи. Их отличия очень подробно рассматривались на форуме.
     
  3. mms

    mms Гость

    s_addr - неудачное название переменной, т.к. есть такой макрос, который студия и пытается развернуть:

    Код (Text):
    #define s_addr S_un.S_addr /* can be used for most tcp & ip code */
     
  4. shisik

    shisik Well-Known Member

    Регистрация:
    26 авг 2007
    Сообщения:
    154
    Симпатии:
    0
    Спасибо. Руки надо поотрывать автору статьи, в которой это было написано (кстати, именно для VC++ написано). Сменил имя, теперь всё нормально...
     
Загрузка...
Похожие Темы - Работа сокетами
  1. Andrey Kha
    Ответов:
    0
    Просмотров:
    29
  2. Hoasker
    Ответов:
    0
    Просмотров:
    64
  3. garri671
    Ответов:
    0
    Просмотров:
    55
  4. lelik200969
    Ответов:
    0
    Просмотров:
    53
  5. Kozolick
    Ответов:
    0
    Просмотров:
    142

Поделиться этой страницей