It could be that what you're trying to do is just too big for the stack.
The stack is a part of your RAM that is relatively small.
For big arrays you will have to use the "heap", which is for dynamically allocated memory.
so instead ofint my_array[30000*3];
you'd have to do... int* my_array = newint[30000*3];
...and then delete the data once you're done with it delete [] my_array;
use [] operator to access elements just like a regular array. my_array[0] = 5;
And you don't have to worry about deleting the data, it is done for you.