//验证输入的表达式是不是正确的四则运算,不考虑负数bool isValidExpression(const string& expression){ stacks; vector v; for(int i=0; i 0 && (v.back()>='0' && v.back()<='9'))//连续数字只加入一个数字 { }else{ v.push_back(expression[i]); } break; default: return false;//录入非法字符 break; } } if(!s.empty() || v.size()==0)//栈不为空或者向量为空则返回false { return false; } for(int i=0; i '9')//偶数位为数字 { return false; } if(i%2==1 && v[i]!='+' && v[i]!='-' && v[i]!='*' && v[i]!='/')//奇数位为符号 { return false; } } return true;}