c++字符串与数值的相互转换

本文展示了C++中如何使用to_string、stod、stof和stoi函数进行数值与字符串之间的转换。示例代码包括将整数转换为字符串,再将字符串转换回double类型,以及从含有其他文本的字符串中提取并转换数值。
摘要由CSDN通过智能技术生成

进行字符串和数值的相互转换,需要用到函数如下:

  • to_string(val)
    • 将算术类型int、double等转为字符串
      
  • stod
    • 将数值字符串转为double类型,遇到不可能数值的一部分就会结束。
      
    • 可以是十六进制0x或者0X,也可以是小数点或者e、E表示的指数部分
      
  • stof
    • 将数值转换为float类型
      
  • stoi
    • 将数值转为int类型
      

展示代码如下:

#include <iostream>

using namespace std;

int main(){

	int i = 42;
	string s = to_string(i); // 将整数转为字符表示形式 
	cout << s << endl;
	
	double d = stod(s);  // 将数值字符串转为double型 
	cout << d << endl;
	
	string s2 = "t=2.2=";
	double d1 = stod(s2.substr(s2.find_first_of("0123456789."))); // 将一个字符串中的数值进行转换 
	cout << d1 << endl;
	
	return 0; 
} 
  • s2.find_first_of(“0123456789.”)
    • 代表查找s2中第一次出现这些数子字符的索引
      
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值