在函数中向量中添加元素时出错-alloc()

时间:2015-09-22 14:14:58

标签: c++ vector runtime-error bad-alloc

我在程序中向向量p添加元素时得到错误行42" p.pushback(c);"错误的alloc()。可能是错误的原因是什么。 Live Example

void factorisation(lld N)
{

    lld i=0;
    sieve();
    while(prime[i]*prime[i]<=N)
    {
        lld c=0;
        while(N%prime[i]==0)
        {
            N/=prime[i];
            ++c;
            if(N%prime[i]!=0)
            {
                    cout<<prime[i]<<" "<<c<<endl;
                   factors.push_back(prime[i]);
                   p.push_back(c);

            }


        }

      ++i;
    }
    if(N!=1)
    {
        cout<<N<<" "<<1<<endl;
    factors.push_back(N);
    p.push_back(1);
    }

}

0 个答案:

没有答案