linuxc获取IP地址的命令代码
时间:
恒辉636由 分享
#include
#include
#include
#include
#include
学习啦在线学习网 #include
学习啦在线学习网 #include
int main(int argc, char **argv)
{
学习啦在线学习网 int sockfd;
struct ifreq ifr;
学习啦在线学习网 char *ifname="eth0";
学习啦在线学习网 strncpy(ifr.ifr_name, ifname, IFNAMSIZ-1);
学习啦在线学习网 sockfd = socket(AF_INET, SOCK_STREAM, 0);
学习啦在线学习网 if(ioctl(sockfd, SIOCGIFADDR, &ifr) == -1)
{
printf("Error\n");
return;
}
学习啦在线学习网 struct sockaddr_in *myaddr;
myaddr = (struct sockaddr_in*)&(ifr.ifr_addr);
printf("IP: %s\n", inet_ntoa(myaddr->sin_addr));
}