linux c获取IP地址
2018-07-20 来源:open-open
#include <stdio.h>
#include <sys/socket.h>
#include <sys/ioctl.h>
#include <netinet/in.h>
#include <net/if.h>
#include <string.h>
#include <arpa/inet.h>
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));
}
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。
上一篇: JavaScript常用代码段
最新资讯
热门推荐