(35)IP地址无效化

文章目录

  • 每日一言
  • 题目
  • 解题思路
  • 代码
  • 结语


每日一言

台阶是一层一层筑起的,目前的现实是未来理想的基础。只想将来,不从近处现实着手,就没有基础,就会流于幻想。——徐特立


题目

题目链接:IP地址无效化

给你一个有效的 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 地址


解题思路

首先要知道,一个IPv4中只有3个 “ . ”
根据题意,要把每个 " . “替换成” [.] ",相比较原来的字符串,在创建新的字符串时,还需要给新的字符串多分配 2*3 = 6的空间
分配好空间了,接下来就好办了,遍历整个字符串,
如果当前字符不是“ . ”,则直接放入新的字符串中
如果当前字符是“ . ”,则按顺序依次放入“ [ ”、“ . ”、“ ] ”

代码

char * defangIPaddr(char * address){int len = strlen(address);//注意strlen函数计算长度时没有把\0数进去char* arr = (char*)malloc(len+6+1);//在 len+6+1 中,“1” 是为字符'\0'开辟空间char* p1 = arr;//p1 的作用是记录新数组的最后一位while(*address){if('.' == *address){*p1++ = '[';  *p1++ = '.';  *p1++ = ']';  }else{*p1++ = *address;}address++;}*p1 = '\0';//别忘了在字符串最后加上结束标志return arr;
}

结语

请给自己些耐心,一口吃不成胖子。
山外青山楼外楼,莫把百尺当尽头。
保持空杯心态加油努力吧!


都看到这里啦!真棒(*^▽^*)

可以给作者一个免费的赞赞吗,这将会鼓励我继续创作,谢谢大家

编程小白写作,如有纰漏或错误,欢迎指正


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/672677.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

什么是网络渗透,应当如何防护?

什么是网络渗透 网络渗透是攻击者常用的一种攻击手段,也是一种综合的高级攻击技术,同时网络渗透也是安全工作者所研究的一个课题,在他们口中通常被称为"渗透测试(Penetration Test)"。无论是网络渗透(Network Penetration)还是渗透…

C++初阶之类与对象(上)详细解析

个人主页:点我进入主页 专栏分类:C语言初阶 C语言进阶 数据结构初阶 Linux C初阶 欢迎大家点赞,评论,收藏。 一起努力,一起奔赴大厂 目录 一.前言 二.类的定义和使用 2.1类的引入 2.2类的定义和访问限定…

Java学习-常用API(一)

Object类 Object类及其常用方法: 代码示例: Objects Objects类的引入,定义及其常见的方法: 示例 包装类 什么是包装类? 自动装箱和自动拆箱: 常用方法: 注意:字符串的 数值&#xf…

1Panel面板如何安装并结合内网穿透实现远程访问本地管理界面

文章目录 前言1. Linux 安装1Panel2. 安装cpolar内网穿透3. 配置1Panel公网访问地址4. 公网远程访问1Panel管理界面5. 固定1Panel公网地址 前言 1Panel 是一个现代化、开源的 Linux 服务器运维管理面板。高效管理,通过 Web 端轻松管理 Linux 服务器,包括主机监控、…

写函数判断闰年

实现函数判断year是不是润年。 下表显示了 C 语言支持的所有算术运算符。假设变量 A 的值为 10,变量 B 的值为 20,则: 运算符描述实例/分子除以分母B / A 将得到 2%取模运算符,整除后的余数B % A 将得到 0 已经知道判断闰年标准…

2024 Google Chrome 浏览器回退安装旧版本

2024 Google Chrome 浏览器回退安装旧版本 查看当前谷歌版本备份浏览器数据卸载浏览器双击重新安装旧版本浏览器 查看当前谷歌版本 详细参考:参考 笔记:最近谷歌浏览器更新后,用着总感觉别扭:不习惯 备份浏览器数据 &#xff…

微服务-微服务Alibaba-Nacos 源码分析 (源码流程图)-2.0.1

客户端注册临时实例,GRPC处理 客户端服务发现 及订阅处理

CloudStack中控制台虚拟机调试

在CloudStack环境中,有时我们需要对系统虚拟机进行调试或者替换其中的JAR包。本文将详细介绍如何通过SSH连接到CloudStack的系统虚拟机,并进行相关的调试和JAR包替换操作。 1. 连接系统虚拟机 首先,我们需要使用SSH连接到目标系统虚拟机。这…

13、gitlab

13、gitlab 4c8g、100g docker安装gitlab(使用k8s的ingress暴露) 版本:https://gitlab.com/gitlab-org/gitlab-foss/-/tags?sortversion_desc 官方docker仓库:https://hub.docker.com/r/gitlab/gitlab-ce/tags docker pull gi…

为什么要使用Node.JS

脚本语言需要一个解析器才能运行,JavaScript是脚本语言,在不同的位置有不一样的解析器,如写入html的js语言,浏览器是它的解析器角色。而对于需要独立运行的js,nodejs就是一个解析器。 每一种解析器都是一个运行环境&a…

力扣经典题:单值二叉树

思路:验证根节点与左右节点的关系即可,然后向下遍历,此题值得注意的点在于要考虑左右节点为空的情况 bool isUnivalTree(struct TreeNode* root) {if(rootNULL){return true;}if(root->left!NULL&&root->val!root->left-&g…

Hadoop3.x基础(4)- Yarn

来源:B站尚硅谷 目录 Yarn资源调度器Yarn基础架构Yarn工作机制作业提交全过程Yarn调度器和调度算法先进先出调度器(FIFO)容量调度器(Capacity Scheduler)公平调度器(Fair Scheduler) Yarn常用命…

【数据分析】Excel中的常用函数公式总结

目录 0 引用方式0.1 相对引用0.2 绝对引用0.3 混合引用0.4 3D引用0.5 命名引用 1 基础函数1.1 加法、减法、乘法和除法1.2 平均数1.3 求和1.4 最大值和最小值 2 文本函数2.1 合并单元格内容2.2 查找2.3 替换 3 逻辑函数3.1 IF函数3.2 AND和OR函数3.3 IFERROR函数 4 统计函数4.1…

Elasticsearch中Document Routing特性

Document Routing在Elasticsearch中是一种高级特性,它允许用户在索引文档时指定一个路由值。通过这种方式,可以确保具有相同路由值的所有文档都存储在同一个分片中。这对于提高查询效率特别有用,因为它允许查询只针对包含相关文档的特定分片&…

解决dockor安装nginx提示missing signature key的问题

问题描述 使用dockor安装nginx拉取nginx的时候提示key丢失问题 问题定位 由于dockor版本低导致 问题解决 卸载重新安装最新版本dockor 解决步骤 1. 卸载旧版本的Docker: sudo yum remove docker docker-common docker-selinux docker-engine 2. 安装依赖包&am…

5、安全开发-Python-红队项目漏扫工具API推送微信任务自动添加并启动

用途:个人学习笔记,有所借鉴,欢迎指正! 目标: 利用Python脚本调用漏洞扫描工具API批量扫描目标url,发现漏洞后有所通知,解放双手。 一、漏洞扫描-API调用-Xray 参考:快速开始 - xra…

82个demo代码|35000字带你认识和学会所有 C++11 algorithm头文件中所有算法函数|algorithm头文件函数用法大全

C <algorithm> 头文件的学习 文章目录 C <algorithm> 头文件的学习参考网站非修改序列操作all_ofany_ofnone_offor_eachfindfind_iffind_if_notfind_endfind_first_ofadjacent_findcountcount_ifmismatchequalis_permutationsearchsearch_n 修改序列操作copycopy_n…

Matplotlib交互

python中matplotlib实现随鼠标滑动自动标注代码 python鼠标画线条 python鼠标拖动曲线 惊了&#xff01;matplotlib也能交互式展示数据&#xff1f; 如何在保持x与y比例不变的情况下缩放pyplot图形&#xff1f; How to animate a scatter plot How can I pass parameters …

【JS逆向八】逆向某企查网站的headers参数,并模拟生成 仅供学习

逆向日期&#xff1a;2024.02.07 使用工具&#xff1a;Node.js 加密方法&#xff1a;未知 / 标准库Hmac-SHA512 文章全程已做去敏处理&#xff01;&#xff01;&#xff01; 【需要做的可联系我】 可使用AES进行解密处理&#xff08;直接解密即可&#xff09;&#xff1a;AES加…

突破编程_C++_面试(基础知识(8))

面试题20&#xff1a;什么内存对齐 以结构体为例来说明内存对齐&#xff1a; 结构体对齐是编译器在内存中布局结构体成员时遵循的一种规则。对齐的目的是提高内存访问效率&#xff0c;减少因内存访问不对齐而引发的性能下降或硬件异常。 在大多数系统中&#xff0c;数据对齐通…