Иницииране на структура с 1D и 2D компоненти на масив в c

Наскоро имах проблеми със създаването на структура, която е направена от 1D и 2D масиви. Размерът на масивите е голям и искам само да инициирам структурата. Ето какво имам досега:

#include<stdio.h>
struct frame{
int time[8000];
int number[8000];
int position[8000][480];
int xcoordinates[8000][480];
int ycoordinates[8000][480];};

int main(int argc, char **argv){
frame testing;
return 0;}

Когато стартирам този код, получавам „Грешка в сегментирането (ядрото е изхвърлено)“. Какво би било възможното решение на този проблем?

Благодаря ви за цялата ви помощ!


person Dan Mar    schedule 30.04.2016    source източник
comment
размерът на frame е 44 MB на 32-битова система. Твърде голям за стека. използвайте malloc.   -  person BLUEPIXY    schedule 30.04.2016
comment
Съгласен, твърде голям за обичайно разрешените размери на стека. В случай, че не харесвате malloc(), направете променливата глобална или статична   -  person tofro    schedule 30.04.2016
comment
какво ще кажете за struct frame testing;?   -  person user3078414    schedule 30.04.2016
comment
@user3078414 Може би OP използва C++ като C.   -  person BLUEPIXY    schedule 30.04.2016
comment
благодаря, направих няколко теста - съгласен съм с проблема с размера на стека и дубликата на въпроса.   -  person user3078414    schedule 30.04.2016