string、char中将单个字符转化为数字的几种方法[通俗易懂]

在string中,strings="12345"如果想提取出每一位的数字,即分别得到1,2,3,4,5,怎么做呢需要用到substr和c_strsubstr:拷贝子字符串strings1=s.substr(0,2);//从下标0开始,拷贝2位则s1="12"; c_str:返回字符串的指针代码如下:intmain(){ strings="12345"; for…

大家好,又见面了,我是你们的朋友全栈君。

在string中,string s = “12345”

如果想提取出每一位的数字,即分别得到1,2,3,4,5,怎么做呢

需要用到substr和c_str

substr:拷贝子字符串

string s1 = s.substr(0,2);//从下标0开始,拷贝2位

则s1 = “12”; 

c_str:返回字符串的指针

代码如下:

int main() 
{	
	string s = "12345"; 
	for (int i = 0; i < s.size(); i++)
	{
		int temp = atoi(s.substr(i, 1).c_str());
		cout << temp << endl;
	}
	getchar();
	return 0;
}

输出:

1
2
3
4
5

对于char来说,简单些

int main() 
{	
	char p[] = "12345";
	for (int i = 0; i < strlen(p); i++)
	{
		int temp = p[i] - '0';
		cout << temp << endl;
	}
	getchar();
	return 0;
}

结果同上

也可以将string转为char处理,如下

int main() 
{	
	string s = "12345"; 
	const char *p = s.c_str();
 	for (int i = 0; i < s.size(); i++)
	{
		int temp =  p[i] - '0' ;
		cout << temp << endl;
	}
	getchar();
	return 0;
}

结果同上

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/125527.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Hough变换-理解篇

    Hough变换-理解篇霍夫变换 HoughTransfo 是图像处理中的一种特征提取技术 它通过一种投票算法检测具有特定形状的物体 该过程在一个参数空间中通过计算累计结果的局部最大值得到一个符合该特定形状的集合作为霍夫变换结果 霍夫变换于 1962 年由 PaulHough 首次提出 53 后于 1972 年由 RichardDuda 和 PeterHart 推广使用 54 经典霍夫变换用来检测图像中的直线 后来霍夫变换

    2025年10月18日
    2
  • tar 解压缩命令详解

    tar 解压缩命令详解以下是对tar命令的一些总结:解压操作:tar解压缩命令详解这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。下

    2022年7月1日
    26
  • 零散学习笔记(一)—-单相逆变电路设计

    零散学习笔记(一)—-单相逆变电路设计这几天帮别人设计然后画一个电路图,只设计电路图,没有具体实现功能。这题是一道电赛题,大家都知道设计一个电路简单,但是要具体实现功能可不是那么简单的。而本文章是最简单的一部分—电路部分,不涉及程序部分和调试。AC-DC电路设计电源输入电压为220V交流电压,在一般设计中只要是输入为220V交流电肯定需要将交流电转换成直流电压。一般有两个方法:模电方法:使用转换电路——整流(几个二极管组合起来把正负电压变成单向)–滤波(使波形平滑)–稳压(固定输出)–直流电压数电方法:使用DC-AC芯片进行转换(博

    2022年6月9日
    40
  • platform_driver_register( )过程追踪

    platform_driver_register( )过程追踪以下代码源于linux3.1.9。platform_driver_register()是内核中非常著名的函数。platform_driver_register()负责注册平台驱动程序,如果在内核中找到了使用驱动程序的设备,调用probe()。刨去参数检查、错误处理,platform_driver_register的主要过程如下:。。。{。。。retur…

    2022年7月26日
    21
  • 起步上路「建议收藏」

    起步上路「建议收藏」始于2016-09-11开篇,中间基于工作的内容,记录了几篇相关内容的博客,离上一次发博客(2017-07-24),也过了1年多的时间。这个期间,开始转战人工智能方向,深度学习算法的内容。几经磨难,算是踏入门槛,期间也记录了些许内容。期间也看了各路朋友相关的博客内容,其中不乏精彩之作,为初学者提供了很好的帮助。目前接触和比较熟悉的是目标检测相关的内容,大多基于caffe深度学习框架,博客内容不…

    2022年6月9日
    51
  • route命令的使用详解[通俗易懂]

    route命令的使用详解[通俗易懂]Linux系统的route命令用于显示和操作IP路由表(show / manipulate the IP routing table)。要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现。在Linux系统中,设置路由通常是为了解决以下问题:该Linux系统在一个局域网中,局域网中有一个网关,能够让机器访问Internet,那么就需要将这台机器的IP地址设…

    2022年7月18日
    16

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号