学习啦>学习电脑>操作系统>Linux教程>

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));

  }

168493