views:

1760

answers:

5

This code throws up the compile error given in the title, can anyone tell me what to change?

#include <iostream>

using namespace std;

int main(){

    int myArray[10][10][10];

    for (int i = 0; i <= 9; ++i){
     for (int t = 0; t <=9; ++t){            
            for (int x = 0; x <= 9; ++x){
                for (int y = 0; y <= 9; ++y){

                myArray[i][t][x][y] = i+t+x+y; //This will give each element a value

                      }
                      }
                      }
                      }

    for (int i = 0; i <= 9; ++i){
     for (int t = 0; t <=9; ++t){
            for (int x = 0; x <= 9; ++x){
                for (int y = 0; y <= 9; ++y){

                cout << myArray[i][t][x][y] << endl;

                    }
                    }
                    }                
                    }

    system("pause");

}

thanks in advance

+6  A: 

You are subscripting a three-dimensional array myArray[10][10][10] four times myArray[i][t][x][y]. You will probably need to add another dimension to your array. Also consider a container like Boost.MultiArray, though that's probably over your head at this point.

coppro
dammit, I must have accidentally deleted that line earlier on before i started trying to run it.
A: 

You're trying to access a 3 dimensional array with 4 de-references

You only need 3 loops instead of 4, or int myArray[10][10][10][10];

DShook
A: 

int myArray[10][10][10]; should be int myArray[10][10][10][10];

Cadoo
+1  A: 

What to change? Aside from the 3 or 4 dimensional array problem, you should get rid of the magic numbers (10 and 9).

const int DIM_SIZE = 10;
int myArray[DIM_SIZE][DIM_SIZE][DIM_SIZE];

for (int i = 0; i < DIM_SIZE; ++i){
    for (int t = 0; t < DIM_SIZE; ++t){            
        for (int x = 0; x < DIM_SIZE; ++x){
jmucchiello
Just in case in future you have a different number of fingers ;-)
Steve Jessop
A: 

How many times are you going to post a nearly identical array question? How many times are you going to post a nearly identical array question? How many times are you going to post a nearly identical array question? How many times are you going to post a nearly identical array question?

A comment, not an answer, though now irrelevant as the user has left and the question is very old...
GMan