Значение сокета, созданного в c ++, очень большое, например 590258032 и т. д. - PullRequest
0 голосов
/ 17 мая 2018

Я использую следующий код для создания сокетов с UTD , но я получаю очень большие значения, которые превышают пределы int.

int m_bindsock = UDT::socket(AF_INET, SOCK_DGRAM, 0)

Пожалуйста, сообщите, что можетбыть неправым в среде / коде, чтобы это исправить.Я использую Ubuntu 14 и пытаюсь создать UDP-сокеты.

1 Ответ

0 голосов
/ 17 мая 2018

Функция UDT::socket() возвращает значение UDTSOCKET -типа - и UDTSOCKET, по-видимому, int, поэтому переполнения быть не должно. Независимо от этого - определите m_bindsock как UDTSOCKET, а не int.

Теперь, при неудаче, UDT::socket() возвращает UDT::INVALID_SOCK, поэтому, возможно, вам следует просто сравнить с этим и / или посмотреть, что вам скажет getlasterror().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...