string plus(string a,string b) //参数是:字串下标的低位记录数值的高位
{
string ans;
int i,up=0; //up是进位值
if(a.size()>b.size()) //用0补充较短的字串
b=string(a.size()-b.size(),'0')+b;
else if(a.size()<b.size())
a=string(b.size()-a.size(),'0')+a;
for(i=a.size()-1;i>=0;--i) //加法部分
{
ans=(char)((a[i]+b[i]-'0'-'0'+up)%10+'0')+ans;
up=(a[i]+b[i]-'0'-'0'+up)/10;
}
if(up) ans=(char)(up+'0')+ans; //最高位相加后有否进位
return ans;
}