手写方法实现整型例如:123与字符串例如:“123“相互转化(下篇)

目录

一、前言

二、整型转化为字符串

1. 初始化变量

2.数字1转字符'1'

3.取出value中的每一项数字

4.将字符放入字符数组中

5.最终代码   

三、最后


一、前言

        本篇文章紧跟上篇文章,本片内容为整型转化为字符串类型。至于我为什么要分两篇文章,主要是考虑这篇内容量的大小,同时还有方便用户阅读的好处。

        这篇文章整体思想和上篇文章类似,所以这篇文章有些内容可能我不会在重复的赘述了。好的,我们废话不多说,开始我们的讲解把!

        上篇文章链接:https://blog.csdn.net/m0_62681656/article/details/139836435?spm=1001.2014.3001.5501

二、整型转化为字符串

       整型转化为字符串的过程要比反过来转化要复杂一点,这是因为整型不是字符串数组,不能直接通过数组下标访问每一项。

        下面我将以int 类型value转换为字符串类型str为例,尽量用最少的代码讲解思路以及方法。

int value { 1234567 };

1. 初始化变量

        我们首先定义一个变量value,然后再定义一个大小为0x20的字符串数组用来存放字符串,

用来相互转化的值。

	int value{ 123456 };char str[0x20]{};
2.数字1转字符'1'

        和上篇文章一样,数字1转字符'1',依然可以通过ASCII表进行转化。

	int a = 1;std::cout << (char)(a + 48); // ‘1’
3.取出value中的每一项数字

        int整型value为123456,取出每一项可以通过value每次 % 10,然后再 / 10 的方式,依次取出6 ,5,4,3,2,1,另外记住这种顺序是倒叙。代码为:

	while (value){std::cout << (char)(value % 10 + 48);  // 依次输出字符'6' '5' '4' '3' '2' '1'value = value / 10;}
4.将字符放入字符数组中

        再我们依次取出字符后,我们需要把这些字符放入字符数组中,同样需要注意顺序。

        这里我们可以定义索引index,大小为字符长度减一,这是因为我们获取的字符是反过来的,所以需要不断地索引值index--,依次放入数组中。

        图解为:

5.最终代码   
	int value{ 123456 };// 负数情况//int value{ -123456 };char str[0x20]{};// index 字符索引值int index{ 0x1F };bool is = value < 0;if (is) value *= -1;while (value){str[--index] = value % 10 + 48;value = value / 10;}if (is) str[--index] = '-';std::cout << &str[index];  // "123456"

三、最后

        结果展示:

        实现整型转化为字符串的方法有许多,有的代码量多,过程易懂;有的代码量少,却比较复杂,不管怎样能实现过程就是好的方法。最后感谢大家的点赞和收藏!!

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

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

相关文章

艺术创作加速器:三款AI绘画软件,让你的工作效率倍增!

在数字化浪潮的推动下&#xff0c;艺术创作正迎来革命性的变化。AI绘画软件的出现&#xff0c;不仅为艺术家提供了全新的创作工具&#xff0c;也为艺术爱好者开辟了一片创意的新天地。这些软件利用人工智能技术&#xff0c;根据用户的简单描述或草图&#xff0c;快速生成独特的…

Linux基础知识笔记

1.配置VNC linux&#xff1a; yum install tigervnc-server vncpasswd vncserver & New ‘2SCOM-RH72-1:1 (root)’ desktop is 2SCOM-RH72-1:1 windows: 软件: VNC-Viewer-6.20.113-Windows-64bit 连接信息 192.168.1.1:1 2.重置root密码 第一步: 开机后再内核上敲击e 第…

视频汇聚安防综合管理系统EasyCVR平台GB28181设备注册未上线的原因排查与解决

视频汇聚安防综合管理平台EasyCVR视频监控系统基于云边端架构&#xff0c;可支持海量视频汇聚集中管理&#xff0c;能提供视频监控直播、云端录像、云存储、录像检索与回看、告警&#xff08;协议告警/智能告警/1400视图库告警&#xff09;、平台级联、AI智能分析接入等视频能力…

从艳彩山水到艳彩艺术 薛永年:郭泰来艳彩艺术填补了中国美术史的空白

薛永年先生 自6月12日开展以来&#xff0c;郭泰来现代艺术大展杭州如火如荼地进行着&#xff0c;吸引了众多艺术爱好者和专业人士前往。毫不夸张地说&#xff0c;总统和清洁工人都能在他的作品中找到自己心中的那一块共振带并与之产生强烈的共鸣&#xff0c;这便是郭泰来先生的…

矩阵中严格递增的单元格数

题目链接&#xff1a;leetcode:矩阵中严格递增的单元格数 描述 给你一个下标从 1 开始、大小为 m x n 的整数矩阵 mat&#xff0c;你可以选择任一单元格作为 起始单元格 。 从起始单元格出发&#xff0c;你可以移动到 同一行或同一列 中的任何其他单元格&#xff0c;但前提是目…

【JavaEE进阶】Spring统一功能处理:拦截器的使用

目录 1.什么是拦截器? 2.拦截器的使用 2.1定义拦截器 2.2 注册配置拦截器 3.拦截器详解 3.1 拦截路径 3.2 拦截器的执行流程 4. 使用拦截器实现登录校验 4.1 定义拦截器 4.2 注册配置拦截器 1.什么是拦截器? 拦截器是Spring框架提供的核心功能之⼀, 主要用来拦截用…

AI赋能前端:你的Chrome 控制台需要AI(爱)

像会永生那样去学习,像明天就要死亡那样去生活。——圣雄甘地 大家好,我是柒八九。一个专注于前端开发技术/Rust及AI应用知识分享的Coder 此篇文章所涉及到的技术有 AI(Gemini)ChromeDevTool🪜魔法接码平台因为,行文字数所限,有些概念可能会一带而过亦或者提供对应的学习…

[【机器学习】深度概率模型(DPM)原理和文本分类实践

1.引言 1.1.DPM模型简介 深度概率模型&#xff08;Deep Probabilistic Models&#xff09; 是结合了深度学习和概率论的一类模型。这类模型通过使用深度学习架构&#xff08;如神经网络&#xff09;来构建复杂的概率分布&#xff0c;从而能够处理不确定性并进行预测。深度概率…

【Android】多种方式实现截图(屏幕截图、控件截图、长图)

目录 1. View截图2. WebView截图3. 屏幕截图格式转换方法 Android 截图主要为四种&#xff1a;View 截图、WebView 截图、屏幕截图、系统截图和 adb 截图。后两种截图不常用&#xff0c;不详细展开。 1. View截图 可以截取到View不可见的部分&#xff0c;生成长图&#xff0c…

docker官方源无法使用的解决办法

使用官方源 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo 安装docker报错 Loaded plugins: fastestmirror, priorities Loading mirror speeds from cached hostfile https://download.docker.com/linux/centos/7/x86_64/stable/re…

刘亦菲新剧玫瑰的故事

刘亦菲新剧《玫瑰的故事》&#xff1a;开放结局&#xff0c;无限遐想 当刘亦菲再次踏入荧屏&#xff0c;与导演汪俊携手打造的《玫瑰的故事》便引发了无数观众的期待与关注。这部剧不仅汇聚了众多实力派演员&#xff0c;更以其独特的剧情和精致的制作成为了近期热门的话题。《…

网络编程(TCP协议,UDP协议)

目录 网络编程三要素 IP IPv4 InetAddress类 端口号 协议 UDP协议 UDP协议发送数据 UDP协议接收数据 UDP的三种通信方式(代码实现) TCP协议 TCP通信程序 三次握手和四次挥手 练习 1、客户端:多次发送数据服务器:接收多次接收数据&#xff0c;并打印 2、客户端…

cad批量打印pdf怎么弄?介绍三种打印方法

cad批量打印pdf怎么弄&#xff1f;在CAD设计领域&#xff0c;批量打印PDF文件是一项常见且至关重要的任务。面对大量的CAD图纸&#xff0c;如何高效地进行转换和打印&#xff0c;成为了设计师们亟待解决的问题。今天&#xff0c;我们就来推荐三款能够批量打印PDF的CAD软件&…

最新扣子(Coze)实战案例:扣子卡片的制作及使用,完全免费教程

&#x1f9d9;‍♂️ 大家好&#xff0c;我是斜杠君&#xff0c;手把手教你搭建扣子AI应用。 &#x1f4dc; 本教程是《AI应用开发系列教程之扣子(Coze)实战教程》&#xff0c;完全免费学习。 &#x1f440; 关注斜杠君&#xff0c;可获取完整版教程。&#x1f44d;&#x1f3f…

面对不断变化的安全标准和威胁,Cobol 程序应采取哪些措施来加强其安全性和防护能力?

面对不断变化的安全标准和威胁&#xff0c;Cobol 程序可以采取以下措施来加强其安全性和防护能力&#xff1a; 更新和升级&#xff1a;定期更新和升级Cobol编译器和开发环境&#xff0c;以获取最新的安全性改进和修补程序。 安全审计&#xff1a;定期进行安全审计&#xff0c;…

对红酒数据集,分别采用决策树算法和随机森林算法进行分类。

1.导入所需要的包 from sklearn.tree import DecisionTreeClassifier from sklearn.ensemble import RandomForestClassifier from sklearn.datasets import load_wine from sklearn.model_selection import train_test_split 2.导入数据&#xff0c;并且对随机森林和决策数进…

深入解析Spring Cloud的常用插件和注解(下)

在上一篇文章中&#xff0c;我们介绍了Spring Cloud的一些常用插件及其配置和使用。本文将继续探讨Spring Cloud的常用注解及其在实际开发中的应用。 2. Spring Cloud的常用注解 2.1 EnableEurekaServer 该注解用于启动一个Eureka Server&#xff0c;使得其他微服务可以注册…

后端程序员的Linux命令指南

后端程序员的终极命令指南&#xff1a;考考自己是不是真正掌握Linux的使用 欢迎各位穿着格子衬衫&#xff0c;常年抱着键盘睡觉的后端小伙伴们&#x1f44b;&#x1f44b;&#x1f44b;&#xff01;今天&#xff0c;考考你们是不是掌握以下让你们在日后在服务器上叱咤风云的命令…

关于微信小程序取消获取用户昵称的一些思考

官方说明&#xff0c;有部分小程序乱用授权&#xff0c;强迫用户提交头像和昵称。 核心是微信担心用户信息被滥用。 其一 &#xff0c;微信头像经常是本人真是照片&#xff0c;在现在人工智能算法的加持下&#xff0c;人脸数据太容易被套取。 其二&#xff0c;微信名称同理&…

Gobject tutorial 九

The GObject messaging system Closures closure是一个抽象、通用的概念&#xff0c;它包含一个函数和一些变量。作用就是实现函数回调功能。 我们看看GLib对closure是怎么定义的。 /*** GClosure:* in_marshal: Indicates whether the closure is currently being invoked…