在C++的string庫函數中,可以使用std::stoi
函數將字符串轉換為數字。
std::stoi
函數的原型如下:
int stoi(const string& str, size_t* idx = 0, int base = 10);
其中,str
是要轉換的字符串,idx
是指向字符串中第一個非數字字符的位置的指針,默認為0,base
是數字的基數,默認為10。如果字符串表示的是十六進制數,則base
應該設置為16。
例如,將字符串"123"轉換為數字:
#include <iostream>
#include <string>
using namespace std;
int main() {
string str = "123";
int num = stoi(str);
cout << num << endl; // 輸出123
return 0;
}
如果字符串中包含非數字字符,std::stoi
函數將拋出std::invalid_argument
異常。可以使用try/catch
語句來處理這種異常。