该程序在执行时停止工作。我用codeblocks制作了这个程序

问题描述 投票:1回答:1

为什么这个程序停止使用一条消息,说明进程在codeblocks上返回-1073741819?所有其他程序都在处理除此之外的代码块。这是我完成大学辅导的未完成项目。

    #include<iostream>
    #include<vector>
    #include<math.h>
    #include<cstdlib>
    using namespace std;
    int main()
    {
        cout<<"\tThis is a C++ program to implement Quine-McCluskey logic to minimize a given Boolean function"<<endl;
        unsigned int nv,nmin,roll,i;
        vector<int> minterms;
        cout<<"Enter your roll number    ";
        cin>>roll;
        srand(roll);
        cout<<endl<<"Enter the number of variables(1-10)";
        cin>>nv;
        if(nv<1||nv>10)
        {
            cout<<endl<<"Invalid number of variables";
            exit(0);
        }
        cout<<endl<<"Enter the number of min-terms(1-"<<pow(2,nv)<<")   ";
        cin>>nmin;
        if(nmin<1||nmin>pow(2,nv))
        {
            cout<<"Invalid number of min-terms(1-"<<pow(2,nv)<<")";
            exit(0);
        }/*it stops here*/
        for(i=0;i<nmin;i++)
        {
            minterms[i]=rand()%int(pow(2,nv));
        }
        cout<<endl<<"The randomly generated min-terms are ";
        for(i=0;i<nmin;i++)
        {
            cout<<minterms[i]<<"  ";
        }

    }
c++
1个回答
5
投票

你没有在minterms向量中分配任何空间。而不是分配给minterms[i],将值传递给minterms.push_back()

© www.soinside.com 2019 - 2024. All rights reserved.