怎样将使用过inet_addr()函数的IP地址再次转换成字符串型? VC/MFC / 网络编程
比如一个ip地址调用过inet_addr("192.168.1.1")之后得到一个unsigned   long的数字,然后我想把这个unsigned   long再转换成192.168.1.1,应该用什么函数进行,谢谢

解决方案 »

  1.   

    要不然,自己写一个.一样的功能
    void inet_ntoa1(char *strHost,unsigned int iAddress){
       UINT32 ip;
       int   ch;
       char   sIp[5];
       ip=ntohl(iAddress);
       ch=ip>>24;
       sprintf(sIp,"%d.",ch);
       strcpy(strHost,sIp); 
       ch=(ip>>16)&0x00FF;
       sprintf(sIp,"%d.",ch);
       strcat(strHost,sIp); 
       ch=(ip>>8)&0x0000FF;
       sprintf(sIp,"%d.",ch);
       strcat(strHost,sIp); 
       ch=ip&0x000000FF;
       sprintf(sIp,"%d",ch);
       strcat(strHost,sIp); 
    }
      

  2.   

    in_addr addr;
    addr.S_un.S_addr=inet_addr("192.168.0.1");
    cout<<inet_ntoa(addr)<<endl;
      

  3.   

    你在MSDN里查inet_addr,最下面都会给出相关函数,或类似函数!以后可以试试!