2013-03-11 4 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]); 
} 
} 

은 내가하는 일은 이것이다 : 나는 '1' (49)의 ASCII 값을와 push_back 것입니다. 값이 1이 되길 원합니다.

_inValue[i]-48을 사용하는 가장 좋은 방법은 무엇입니까?

답변

4

당신은 ASCII 값을 뺄 필요가 '0':

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

훨씬 더 설명 단지 48

같은 매직 넘버를 사용하는 것보다 그
관련 문제