创建一个超出范围的数组

时间:2017-04-21 19:24:21

标签: c++ arrays compiler-errors syntax-error out-of-memory

我正在尝试创建一个用户超出界限并执行错误消息的数组。我想访问数组的每个元素,然后一旦我越过最后一个元素,它将执行消息。 这就是我到目前为止所拥有的

using namespace std;
class safeArray{      //line1     
public: int array[];  //line2
};

void outofBounds(int array[],int sizeofArray);   //line3

int main() {             //line4
int array [3]={2,4,6};   //line5

outofBounds (int array[],int sizeofArray){    //line6
    for (int i=0;i<sizeofArray;i++){        //line7
        i++                                //line8
    }
    if (int i=0;i>sizeofArray){                                 //line9
     cout<<"safeArray array (" <<list[0]<<","<<array[3]<<endl;  //line10
    }
}
return 0;}

我感到困惑,因为第6行显示为错误?它要求一个(在sizeofArray面前。为什么会这样?

编辑:

进行了一些编辑。仍然有错误。

#include <iostream>
using namespace std;

class safeArray{
public:
void outofBounds(int,int);
int yourArray[3];
int i;
};

void outofBounds(int,int);
int yourArray[3];
int i;

 int main() {
 void outofBounds(int,int);
 int yourArray[3];   //Error: Unused Variable 'yourArray'
 return 0;
 };

void outofBounds(int yourArray[],int sizeofArray) {

for (i=0;i<sizeofArray;i++){
cout<<"Please enter integer";
cin >>yourArray[i];
yourArray[i]++;

for (i=0;i>sizeofArray;){
cout<<"safeArray yourArray ("<<yourArray[0]<<","<<yourArray[3]<<")"<<endl;
  }
 }    
}

1 个答案:

答案 0 :(得分:2)

  1. 你没有使用你的班级
  2. 使用数组时,您必须将值放入其中,或者给它一个大小
  3. 您无法在其他功能中创建功能
  4. 如果你有一个数组说array[3]={2,4,6},说array[3],没有意义,数组从第0个索引开始0-> 2,1-> 4,2-> 6 < / LI>
  5. 您无法从任何地方调用您的函数,以便使用您需要在某处调用它的函数
  6. 看起来你不需要上课
  7. 没有测试代码,因为我不明白你想要实现的目标,但这看起来更好

    void outofBounds(int myArray[],int sizeofArray); 
    
    int main()
     {             
        int myArray [3]={2,4,6};   
    
        return 0;
    }
    
    outofBounds (int myArray[],int sizeofArray)
    {    
        for (int i=0;i<sizeofArray;i++)
        {        
            if (int i==0 && i>sizeofArray)
            {                                
             std::cout<<"safeArray array" <<list[0]<<","<<myArray[2]<<std::endl; 
            }
    
            i++
        }
    }