很多时候我们需要将字符串代表的数值转换为数值类型,方法很多,这里介绍一种非常简单有效的方法。
请看下面的函数实例:
#include <sstream>
string doubleToString(double inValue) const
{
ostringstream ostrStream;
ostr << inValue;
return ostr.str();
}
double stringToDouble(string inString) const
{
double temp;
istringstream istrStream(inString);
istrStream >> temp;
if ( istrStream .fail() || ! istrStream .eof()) {
return 0;
}
return temp;
}
C++流所对应的类及头文件
|
Input |
output |
Header |
Generic |
istream |
ostream |
<iostream> |
File |
ifstream |
ofstream |
<fstream> |
C string (char*) |
istrstream |
ostrstream |
<strstream> |
String |
istringstream |
ostringstream |
<sstream> |
针对这里的istringstream和ostringstream而言,他们的继承关系如下: