zoukankan      html  css  js  c++  java
  • (OK) ip-str.c

    #include <stdio.h> 
    #include <string.h>
    
    #include <sys/types.h>  
    #include <sys/socket.h>  
    #include <arpa/inet.h> 
    
    int main(void)
    { 
      char *token;
      char buf1[16];
      char buf2[4][4];
      char buf3[16];
      int i = 0;
      struct sockaddr_in addr;
      memset(buf1, 0, 16);
      memset(buf2, 0, 16);
      memset(buf3, 0, 16);
    
      //buf = inet_ntoa(sin_dest.sin_addr);
      //sprintf(buf1, "%s", inet_ntoa(sin_dest.sin_addr));
    
      sprintf(buf1, "%s", "112.26.0.8");
    
      token = strtok(buf1, ".");
      while (token != NULL)
      {
        sprintf(buf2[i++], "%s", token);
        token = strtok(NULL, ".");
      }
    
      strcat(strcat(strcat(strcat(strcat(strcat(strcat(buf3,buf2[0]), "."), buf2[1]), "."), buf2[2]), "."), buf2[3]);
      inet_aton(buf3, &addr.sin_addr);
      printf("%s (%u)
    ", inet_ntoa(addr.sin_addr), addr.sin_addr.s_addr);
    
      buf2[2][0] = '1';
      memset(buf3, 0, 16);
      strcat(strcat(strcat(strcat(strcat(strcat(strcat(buf3,buf2[0]), "."), buf2[1]), "."), buf2[2]), "."), buf2[3]);
      inet_aton(buf3, &addr.sin_addr);
      printf("%s (%u)
    ", inet_ntoa(addr.sin_addr), addr.sin_addr.s_addr);
    
      buf2[2][0] = '2';
      memset(buf3, 0, 16);
      strcat(strcat(strcat(strcat(strcat(strcat(strcat(buf3,buf2[0]), "."), buf2[1]), "."), buf2[2]), "."), buf2[3]);
      inet_aton(buf3, &addr.sin_addr);
      printf("%s (%u)
    ", inet_ntoa(addr.sin_addr), addr.sin_addr.s_addr);
    
      buf2[2][0] = '3';
      memset(buf3, 0, 16);
      strcat(strcat(strcat(strcat(strcat(strcat(strcat(buf3,buf2[0]), "."), buf2[1]), "."), buf2[2]), "."), buf2[3]);
      inet_aton(buf3, &addr.sin_addr);
      printf("%s (%u)
    ", inet_ntoa(addr.sin_addr), addr.sin_addr.s_addr);
    
      buf2[2][0] = '4';
      memset(buf3, 0, 16);
      strcat(strcat(strcat(strcat(strcat(strcat(strcat(buf3,buf2[0]), "."), buf2[1]), "."), buf2[2]), "."), buf2[3]);
      inet_aton(buf3, &addr.sin_addr);
      printf("%s (%u)
    ", inet_ntoa(addr.sin_addr), addr.sin_addr.s_addr);
    
      addr.sin_addr.s_addr = inet_addr("112.26.9.8");
      printf("%s (%u)
    ", inet_ntoa(addr.sin_addr), addr.sin_addr.s_addr);
    
      //---------------------------------------
      const char *address = "255.255.255.255";
    
      inet_aton(address, &addr.sin_addr);
      printf("%s (%u)
    ", address, addr.sin_addr.s_addr);
      //---------------------------------------
    
      return 0;
    }
    


  • 相关阅读:
    如何在JavaScript中正确引用某个方法(bind方法的应用)
    使用后缀数组寻找最长公共子字符串JavaScript版
    YprogressBar,html5进度条样式,js进度条插件
    java中基本类型和包装类型实践经验
    0~400中1出现了多少次?
    关于JavaScript内存泄漏的质疑
    maven本地仓库配置文件
    IntelliJ idea工具使用
    等额本息和等额本金计算
    开发软件合集
  • 原文地址:https://www.cnblogs.com/ztguang/p/12644655.html
Copyright © 2011-2022 走看看