我想读取一串数字然后将数字逐个推送到矢量。
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值。我希望它具有值1
。
是使用_inValue[i]-48
的最佳方法吗?
答案 0 :(得分:4)
您需要减去ASCII“0”的值:
_value.push_back(_inValue[i]-'0');
这比使用像48这样的幻数更具描述性。