Пытаюсь создать сокет на windows таким образом:
SOCKET sock;
if((sock = socket(AF_INET, SOCK_STREAM, 0)) == -1)
cout << "socket() error: " << errno << "\n";
Входит в тело условия. Вывод:
socket() error: 34
Код именно такой, потому что хотел сохранить совместимость с Linux. Подскажите пожалуйста, в чем может быть дело
В MSDN написано что в случае ошибки функция вернет INVALID_SOCKET (-1) и код ошибки можно получить вызовом функции WSAGetLastError.
errno при этом не выставляется т.к. socket это системная функция и она ничего не знает про errno.
И скорее всего там ошибка WSANOTINITIALISED - не вызвана функция WSAStartup.
Продвижение своими сайтами как стратегия роста и независимости