Abstract
std::string为library type,而int、double为built-in type,两者无法利用(int)或(double)的方式互转,本文提出轉換的方式。

Introduction
使用環境:Visual C++ 9.0 / Visual Studio 2008

Method 1:
使用C的atoi()與atof()。

先利用c_str()轉成C string,再用atoi()與atof()。

string_to_double.cpp / C++

1 /* 
2 (C) OOMusou 2008 http://oomusou.cnblogs.com
3 
4 Filename    : string_to_double.cpp
5 Compiler    : Visual C++ 9.0 / Visual Studio 2008
6 Description : Demo how to convert string to int (double)
7 Release     : 08/01/2008 1.0
8 */
9 
10 #include <iostream>
11 #include <string>
12 #include <cstdlib>
13 
14 using namespace std;
15 
16 int main() {
17  string s = "123";
18  double n = atof(s.c_str());
19  //int n = atoi(s.c_str());
20  
21   cout << n << endl;
22 }


Method 2:
利用stringstream

这里使用functon template的方式将std::string转int、std::string转double。

stringstream_to_double.cpp / C++

1}

相关文章:

  • 2021-11-25
  • 2022-01-23
  • 2022-12-23
  • 2021-11-22
  • 2022-12-23
  • 2022-12-23
  • 2021-10-12
  • 2021-07-17
猜你喜欢
  • 2021-08-03
  • 2021-09-05
  • 2021-11-02
  • 2022-12-23
  • 2021-04-24
  • 2022-12-23
相关资源
相似解决方案