为什么在C++98中编译错误 但在C++11中却AC了
#include<bits/stdc++.h>
using namespace std;
string a[10005],d,h;
int l,s;
double t;
int main(){
while(1)
{
getline(cin,d);
if(d!="EOF")
{
for(int j=0;j<d.size();j++)
{
if(d[j]=='<')
{
if(a[l].size()!=0)
a[l].pop_back();
}
else
a[l].push_back(d[j]);
}
l++;
}
else
break;
}
l=0;
while(1)
{
getline(cin,d);
h.clear();
if(d!="EOF")
{
for(int j=0;j<d.size();j++)
{
if(d[j]=='<')
{
if(h.size()!=0)
h.pop_back();
}
else
h.push_back(d[j]);
}
long long len=min(h.size(),a[l].size());
for(int i=0;i<len;i++)
{
if(h[i]==a[l][i])
s++;
}
l++;
}
else
break;
// cout<<h<<endl;
}
cin>>t;
printf("%d",int((double)s/t*60.0));
return 0;
}