如何将变量字符串[]转换为浮点数
How convert variable string [] to float
如何将字符串转换为浮点数?
这是我的代码:
string A[3] = {"20","21"};
float convertA ;
convertA = atof (A[1]) ;
cout << convertA << endl ;
这是显示的内容:
-1 #lND
对我可能做错的地方有什么建议吗?
阅读 atof()
的手册页,convertA
应该是 double
的类型。
double atof (const char* str);
和
convertA = atof (A[1]) ; /* it won't work */
应该是
convertA = atof(A[1].c_str());
工作代码
#include<iostream>
#include<stdlib.h>
int main() {
std::string A[3] = {"20","21"};
double convertA ;
//convertA = atof (A[1]) ;
convertA = atof(A[1].c_str());
std::cout << convertA << std::endl ;
return 0;
}
编辑: 将字符串转换为浮点数,您可以使用 stof()
而不是 atof()
。在此处找到更多信息 http://www.cplusplus.com/reference/string/stof/
如何将字符串转换为浮点数?
这是我的代码:
string A[3] = {"20","21"};
float convertA ;
convertA = atof (A[1]) ;
cout << convertA << endl ;
这是显示的内容:
-1 #lND
对我可能做错的地方有什么建议吗?
阅读 atof()
的手册页,convertA
应该是 double
的类型。
double atof (const char* str);
和
convertA = atof (A[1]) ; /* it won't work */
应该是
convertA = atof(A[1].c_str());
工作代码
#include<iostream>
#include<stdlib.h>
int main() {
std::string A[3] = {"20","21"};
double convertA ;
//convertA = atof (A[1]) ;
convertA = atof(A[1].c_str());
std::cout << convertA << std::endl ;
return 0;
}
编辑: 将字符串转换为浮点数,您可以使用 stof()
而不是 atof()
。在此处找到更多信息 http://www.cplusplus.com/reference/string/stof/