博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
1108. IP 地址无效化
阅读量:272 次
发布时间:2019-03-01

本文共 982 字,大约阅读时间需要 3 分钟。

给你一个有效的 IPv4 地址 address,返回这个 IP 地址的无效化版本。

所谓无效化 IP 地址,其实就是用 "[.]" 代替了每个 "."。

示例 1:

输入:address = "1.1.1.1"

输出:"1[.]1[.]1[.]1"

示例 2:

输入:address = "255.100.50.0"

输出:"255[.]100[.]50[.]0"

提示:

  • 给出的 address 是一个有效的 IPv4 地址

来源:力扣(LeetCode) 

链接:

法一:利用sscanf()函数与sprintf()函数

char * defangIPaddr(char * address){    if (address == NULL) {        return NULL;    }    int a,b,c,d;    sscanf(address, "%d.%d.%d.%d", &a, &b, &c, &d);    char* res = (char*)malloc(sizeof(char) * 32);    memset(res, 0, sizeof(char) * 32);        sprintf(res, "%d[.]%d[.]%d[.]%d", a, b, c, d);    return res;}

法二:常规解法,利用循环依次赋值

char * defangIPaddr(char * address){    int len = strlen(address);    char *add = (char *)malloc(len+7);    int k = 0;       for(int i = 0; i < len; i++)    {        if(address[i] == '.')        {            add[k++] = '[';            add[k++] = '.';            add[k++] = ']';        }        else        {              add[k++] = address[i];        }    }    add[k] = '\0';    return add;}

 

转载地址:http://moio.baihongyu.com/

你可能感兴趣的文章