VS2008 Отсутствуют файлы заголовков C / C ++ - PullRequest
2 голосов
/ 21 ноября 2008

Итак, я работаю над сетевым программированием на C, и может показаться, что мне не хватает набора стандартных заголовочных файлов C / C ++. Например, sys/socket.h там нет. Несколько других тоже отсутствуют, например netdb.h и unistd.h. Есть ли пакет, который мне нужно установить, чтобы получить их на Windows?

Спасибо

Ответы [ 4 ]

4 голосов
/ 21 ноября 2008

Все эти заголовки взяты из POSIX, а не из ANSI C или ISO C ++. Вы не найдете их в Windows без установки какого-либо слоя совместимости, такого как Cygwin, или портирования приложения на Windows API, или использования некоторых макросов и оболочек для сопоставления похожих функций (т.е. #define strtok_r strtok_s).

4 голосов
/ 21 ноября 2008

ни один из них не является стандартным заголовком c или c ++. В Windows определения сокетов находятся в winsock2.h

1 голос
/ 21 ноября 2008

Как уже говорили другие, вы используете заголовки и определения POSIX для Socket. Проверьте MSDN для заголовков и структур, которые определены в Windows: http://msdn.microsoft.com/en-us/library/ms740506.aspx. Вызовы почти одинаковы, но это даст вам весь синтаксис для Microsoft.

1 голос
/ 21 ноября 2008

вы, вероятно, не найдете его, потому что это часто используемый заголовочный файл linux. Вы можете найти его в linux-libc-dev, если вы действительно этого хотите.

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