c++中string到int的轉換有兩種方法:1、 在C標準庫裡面,使用atoi:
#include <cstdlib>#include <string>std::string text = "152";int number = std::atoi( text.c_str() );if (errno == ERANGE) //可能是std::errno{//number可能由於過大或過小而不能完全儲存}else if (errno == ????)//可能是EINVAL{//不能轉換成一個數字}
2、 在C++標準庫裡面,使用stringstream:(stringstream 可以用於各種資料型別之間的轉換)
#include <sstream>#include <string>std::string text = "152";int number;std::stringstream ss;ss << text;//可以是其他資料型別ss >> number; //string -> intif (! ss.good()){//錯誤發生}ss << number;// int->stringstring str = ss.str();if (! ss.good()){//錯誤發生}
c++中string到int的轉換有兩種方法:1、 在C標準庫裡面,使用atoi:
#include <cstdlib>#include <string>std::string text = "152";int number = std::atoi( text.c_str() );if (errno == ERANGE) //可能是std::errno{//number可能由於過大或過小而不能完全儲存}else if (errno == ????)//可能是EINVAL{//不能轉換成一個數字}
2、 在C++標準庫裡面,使用stringstream:(stringstream 可以用於各種資料型別之間的轉換)
#include <sstream>#include <string>std::string text = "152";int number;std::stringstream ss;ss << text;//可以是其他資料型別ss >> number; //string -> intif (! ss.good()){//錯誤發生}ss << number;// int->stringstring str = ss.str();if (! ss.good()){//錯誤發生}