C++ 中怎么把string类型转换为float型或int型? C++处理字符串的方法似乎比较麻烦

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ 中怎么把string类型转换为float型或int型? C++处理字符串的方法似乎比较麻烦相关的知识,希望对你有一定的参考价值。

c++中string是一个定义的类,要将其转换为float 或者 int 应先转为 char* 。
如 string --> int
string str;
int i=atoi(str.c_str());

string -->float
string str;
float f=atof(str.c_str());

其中 c_str() 表示 返回一个c风格的字符串。
参考技术A 你可以用char吗??为何非要用string呢!!如果用char就简单多了,可以用C语言的库函数,c++不都兼容吗??
char a[100];
double m;
int n;
n=atoi(a); //转化为整型
m=atof(a); //转化为double型
参考技术B #include "stdafx.h"
#include<iomanip>
#include <iostream>
#include <cstdlib>

using namespace std;

int main( )

const int slength=20;
char s1[slength]="123";
char s2[slength]="123.4";
char *ps1,*ps2;
ps1=s1;ps2=s2;
cout<<atoi(ps1)<<endl; //转换成int类型
cout<<atof(ps2)<<endl; //转换成float类型

system("pause");
return 0;
参考技术C int atoi(const char *nptr);

C#中怎么将string转换成int型

参考技术A system.convert
类为支持的转换提供了一整套方法。它提供一种与语言无关的方法来执行转换,而且可用于针对公共语言运行库的所有语言。虽然不同的语言可能会使用不同的技术来转换数据类型,但
convert
类可确保所有的公共转换都可通过一般格式来使用。该类执行收缩转换以及不相关数据类型的转换。例如,支持从
string
转换为数字类型、从
datetime
类型转换为
string
类型以及从
string
类型转换为
boolean
类型。有关可用转换的列表,请参见
convert
类中的方法列表。convert
类执行检查过的转换,并在转换不受支持时总会引发异常。异常通常为
overflowexception。
如果您要将字符串转换为数字值,convert
类也十分有用。下面的代码示例将包含数字字符的字符串转换为
int32
值。
visual
basic
复制代码
dim newstring as string = "123456789"
dim myint as integer = convert.toint32(newstring)
' myint has the value of 123456789.
c#
复制代码
string newstring = "123456789";
int myint = convert.toint32(newstring);
// myint has the value of 123456789.
参考技术B C#
中将string转换成int型:
基本上就是两种方式
int.Parse(string)
Convert.ToInt32(.../*各种重载*/)
推荐使用Convert类
举例:
try

Convert.ToInt32(yourString);

catch(Exception
e)

MessageBox.show(e);

以上是关于C++ 中怎么把string类型转换为float型或int型? C++处理字符串的方法似乎比较麻烦的主要内容,如果未能解决你的问题,请参考以下文章

在vc中,怎样把float类型的数据转换为string类型的数据

c语言里怎么把float转换为char型?

JAVA怎么把long型转为String的

C++怎么把string 转换为char型数组

怎么把float型转换成int

在SQL2000中如何把字符串转换成float型?