大整数类——加法

#include
#define Max 10010
using namespace std;
int main()
{
    int T;
    cin>>T;
    while(T--)
    {
        string a,b;
        cin>>a>>b;
         vectorx;
         x.clear();
         vectory;
         y.clear();
         vectorz(Max+10,0);
         z.clear();
         for(int i=a.size()-1;i>=0;i--)
            x.push_back(a[i]-'0');
          for(int i=b.size()-1;i>=0;i--)
            y.push_back(b[i]-'0');
        int len;
        if(x.size()>y.size())
        {
            len=y.size();
        }
        else if(y.size()>x.size())
            len=x.size();
        else
            len=x.size();
        for(int i=0;iy.size())
        {
            for(int i=len;i=10)
            {
                 z[i+1]=z[i+1]+z[i]/10;
                 z[i]=z[i]%10;
            }
        }
        int flag;
        for(int i=Max;i>=0;i--)
        {
            if(z[i]==0)
                continue;
            else
            {
                flag=i;
                break;
            }
        }
        for(int i=flag;i>=0;i--)
            cout<

自己运行是对的,但是在oj上是Segmentation fault:段错误,检查是否有数组越界,指针异常,访问到不应该访问的内存区域

这个加法的大整数运算 我是根据乘法写出来的


你可能感兴趣的:(大整数类——加法)