实现了在linux下获取ip地址的功能
void VS_GetIPAddress(unsigned int *pIpAddress) { int fd; struct ifreq ifr; struct sockaddr_in *sin; fd = socket(PF_INET, SOCK_DGRAM, 0); memset(&ifr, 0x00, sizeof(ifr)); strcpy(ifr.ifr_name, "eth0"); ioctl(fd, SIOCGIFADDR, &ifr); close(fd); sin = (struct sockaddr_in*)&ifr.ifr_addr; *pIpAddress = sin->sin_addr.s_addr; }
如果有多个网卡,更改eth0为相应值