//atoi (表示 ascii to integer)是把字符串转换成整型数:int atoi(const char *nptr);
//string.c_str是Borland封装的String类中的一个函数,它返回当前字符串的首字符地址。
class Solution {
public:
int evalRPN(vector<string> &tokens) {
stack<int> st;
for (int i=0; i<tokens.size(); i++){
string s = tokens[i];
if (s=="+" || s=="-" || s=="*" || s=="/"){
if (st.size()<2)
return 0; //表达式不合法
int result = 0;
int s2 = st.top();st.pop();
int s1 = st.top();st.pop();
if (s=="+"){
result = s1 + s2;
}else if(s=="-"){
result = s1 - s2;
}else if (s=="*"){
result = s1 * s2;
}else if (s=="/"){
result = s1 / s2;
}
st.push(result);
}else{
st.push(atoi(s.c_str()));
}
}
return st.top();
}
};