因此,我正在使用C進行一些網絡編程,而且似乎我缺少一堆標準的C/C++頭文件。例如,sys/socket.h
不在那裏。其他一些otheres也不在,如netdb.h
和unistd.h
。是否有需要安裝的軟件包才能在Windows上獲取這些軟件包?VS2008丟失了C/C++頭文件
謝謝
因此,我正在使用C進行一些網絡編程,而且似乎我缺少一堆標準的C/C++頭文件。例如,sys/socket.h
不在那裏。其他一些otheres也不在,如netdb.h
和unistd.h
。是否有需要安裝的軟件包才能在Windows上獲取這些軟件包?VS2008丟失了C/C++頭文件
謝謝
所有這些頭文件都來自POSIX,而不是ANSI C或ISO C++。如果沒有安裝某種兼容層(如Cygwin)或將應用程序移植到Windows API,或者使用一些宏和包裝來映射類似函數(即#define strtok_r strtok_s
),則無法在Windows中找到它們。
沒有一個是標準的c或C++頭。在Windows上,套接字定義在winsock2.h
你可能不會找到它,因爲它是一個常用的linux頭文件。如果你真的想要它,你可以在linux-libc-dev中找到它。
正如其他人所說,您正在使用Socket的POSIX頭和定義。查看MSDN,瞭解在Windows上定義的標題和結構:http://msdn.microsoft.com/en-us/library/ms740506.aspx。這些調用幾乎是相同的,但這會給你所有的微軟特定的語法。