我从stackoverflow answer中提取了一个程序并尝试使用MSVC ++ V6 IDE编译它,但是编译器抱怨我没有以下任何一个.h包含文件:
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <net/if.h>
#include <ifaddrs.h>
#include <errno.h>
如何获取这些丢失的包含文件?
答案 0 :(得分:2)
您在上面提到的头文件与基于Linux的发行版有关。这些用于linux上的套接字编程。您可以在基于Linux的发行版上轻松运行此代码。
答案 1 :(得分:0)
缺少的头文件是unix / linux头文件。
Windows套接字API与Berkely套接字API(Linux中的套接字)略有不同。在Windows中,大多数所需的声明都可以通过单个包含文件获得,包括旧的winsock.h
或更新的winsock2.h
。
您需要进行一些进一步的修改才能移植代码。 MSDN上的porting socket applications to Winsock上有很好的指南。