如题,求最简练的办法。

解决方案 »

  1.   

    int ip1;
    int ip2;
    int ip3;
    int ip4;
    char psrc = "10.9.34.1";
    char pobj[ 200 ];
    sscanf( "%d.%d.%d.%d", &ip1, &ip2, &ip3, &ip4 );
    sprintf( "%3.3d.%3.3d.%3.3d.%3.3d", ip1, ip2, ip3, ip4 );
      

  2.   

    int bit1, bit2, bit3, bit4;
    char *ip1, ip2[16];
    ip1 = "10.9.34.1";
    memset(ip2, '\0', 16);
    if (sscanf(ip1, "%d.%d.%d.%d", &bit1, &bit2, &bit3, &bit4) != -1)
        sprintf(ip2, "%03d.%03d.%03d.%03d", bit1, bit2, bit3, bit4);ip2里面就是结果