我对数组0x6dfe78有问题

时间:2018-09-08 12:08:15

标签: c++ arrays

我创建了一个代码,该代码可以告诉某物是否是质数。我不了解一个错误,即0x6dfe78。请帮我解决这个错误。

代码是:

#include <iostream>
using namespace std;

int main()
{

    double priemgetal,max2 = 0;
    cout << "tiep een getal in: ";
    cin >> priemgetal;
    int  getal = priemgetal;
    int geen_priemgetal[getal]={};

    while(max2 <= 1){
        double komma = priemgetal / getal;

        if ( komma - (int)komma > 0.0 ){
            getal--;
        }else{
            max2++;
            getal--;
        }
        if(getal == 1){
            max2+=2;
        }


    }
    if(priemgetal == 1 || priemgetal == 4){
        cout << priemgetal << " is geen priemgetal";
                    max2+=2;
    }else{
        if(getal == 1){
            cout << priemgetal << " is een priemgetal";
                        max2+=2;
        }else{
            cout << priemgetal << " is geen priemgetal je kan het delen door " << geen_priemgetal ;
                        max2+=2;
        }
    }

}

1 个答案:

答案 0 :(得分:4)

int  getal = priemgetal;
int geen_priemgetal[getal]={};

在便携式C ++中,没有像可变长度数组(C)这样的东西。如果您想要一个可以容纳可变数量项目的容器,请使用std::vector<int>

此外,0x6dfe78不是错误代码,而是您打印的数组的地址

 cout << priemgetal << " [...] " << /* here-> */ geen_priemgetal /* <- here */;