码迷,mamicode.com
首页 > 系统相关 > 详细

Linux下获取本机IP地址的代码

时间:2014-08-13 12:41:36      阅读:287      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   io   ar   div   代码   linux   

 

Linux下获取本机IP地址的代码,返回值即为互联网标准点分格式的字符串。

#define ETH_NAME  "eth0"

//获得本机IP地址
char* GetLocalAddress()
{
        int sock;
        struct sockaddr_in sin;
        struct ifreq ifr;
       
        sock = socket(AF_INET, SOCK_DGRAM, 0);
        if (sock == -1)
        {
                perror("socket");
                return NULL;               
        }
       
        strncpy(ifr.ifr_name, ETH_NAME, IFNAMSIZ);
        ifr.ifr_name[IFNAMSIZ - 1] = 0;
       
        if (ioctl(sock, SIOCGIFADDR, &ifr) < 0)
        {
                perror("ioctl");
                return NULL;
        }

        memcpy(&sin, &ifr.ifr_addr, sizeof(sin));
    return inet_ntoa(sin.sin_addr);
}

 

Linux下获取本机IP地址的代码,布布扣,bubuko.com

Linux下获取本机IP地址的代码

标签:style   blog   color   io   ar   div   代码   linux   

原文地址:http://www.cnblogs.com/lxt287994374/p/3909658.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!