2013-03-11 51 views
1

我想讀取一串數字,然後將數字逐一推送到向量中。將字符串推送到一個向量並將其轉換爲int

string _inValue = "12345"; 
vector<int> _value; 

void superint::setVector() 
{ 
for(int i=0; i < _inValue.length(); ++i) 
{ 
    _value.push_back(_inValue[i]); 
} 
} 

我做的是這樣的:我會的push_back的'1'49)的ASCII值。我希望它具有值1

是最好的方法來使用_inValue[i]-48

回答

4

你需要減去ASCII值「0」:

_value.push_back(_inValue[i]-'0'); 

比僅僅使用像48

一個神奇的數字更描述