C++学习ing遇到的问题
#include<iostream>
#include<stack>
#include<string>
#include<iomanip>
using namespace std;
double eval(string e)
{ stack<double> s;
double k,t,sum;
int i=e.size(),j;
for(j=0;j<i;j++)
{ if(e[j]=='+'||e[j]=='*'||e[j]=='/'||e[j]=='-')
{ t=s.top();
s.pop();
k=s.top();
s.pop();
if(e[j]=='+') sum=k+t;
if(e[j]=='-') sum=k-t;
if(e[j]=='*') sum=k*t;
if(e[j]=='/') sum=k/t;
s.push(sum);
}
else s.push((double)(e[j]-96));
}
return s.top();
}
int main()
{ int num;
string ad;
cin>>num;
for(int i=0;i<num;i++)
{ getline(cin,ad);
cout<<fixed<<setprecision(2)<<eval(ad)<<endl;
}
return 0;
}
以上是程序,遇到点小问题,在main的输入语句 cin>>num; 出现问题,只要我把这一行去掉,自己给num赋值,程序没错,但是我一旦用cin,程序就错误,求解答