Определение многомерного массива

 
Разве не должна работать такая конструкция?:

#define SIZE 5

double Massiv[SIZE][SIZE];

Massiv[SIZE][] = {1,2,3,4,5};
 
должно быть так:
double Massiv[SIZE][SIZE]={{1,2,3,4,5},{1,2,3,4,5},{1,2,3,4,5},{1,2,3,4,5},{1,2,3,4,5}};
 
Кстати, так тоже не работает, но уж больно не хочется каждый элемент отдельно определять...
 
работает вот так
double Massiv[SIZE][SIZE]={1,2,3,4,5, 1,2,3,4,5, 1,2,3,4,5, 1,2,3,4,5, 1,2,3,4,5};


любые массивы инициализируются простой последовательностью

 
Не работает и так!

[pre]
double Massiv[SIZE][SIZE]={1,2,3,4,5, 1,2,3,4,5, 1,2,3,4,5, 1,2,3,4,5, 1,2,3,4,5};
[/pre]

При попытке компелировать выдает сообщение об ошибке:
'pre' - variable not difined
'pre' - variable not difined

Что делать? как быть?
 
LeonSi Не пугай народ, так все работает, если не путать HTML и MQL :)
 
Мда! тут я конечно мочканул:) Но все равно немогу понять почему не работает!? помогите плиз...

#property copyright "Copyright © 2004, http://www.LeonSi.nm.ru"
#property link      "http://www.leonsi.nm.ru"

//---- input parameters
extern int       FastEMA=9;
extern int       SlowEMA=24;
extern int       SignalSMA=9;
extern int       SignalOsMA=9;
//extern int       PRICE_TYPE=PRICE_TYPICAL;
double Points;

int cnt=0, total;
int flag=true;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//---- TODO: Add your code here.
  Points = MarketInfo (Symbol(), MODE_POINT);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//---- TODO: Add your code here.

//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//---- TODO: Add your code here.

//+------------------------------------------------------------------+
//| expert initialize function                                       |

double   macd_main0;    double   macd_main1;
double   macd_signal0;  double   macd_signal1;
double   osma[0][1000];  double   osma_sig[0][1000];

for(int i=0; i<1000; i++) osma[0][i]=iOsMA(NULL,0,FastEMA,SlowEMA,SignalSMA,PRICE_CLOSE,i);
for(i=0; i<1000; i++) osma_sig[0][i]=iMAOnArray(osma,1000,SignalSMA,0,MODE_SMA,i);
//| expert initialize function finished                              |
//+------------------------------------------------------------------+

Comment(
        "osma=",osma[0][0]," osma1=",osma[0][1]," osma2=",osma[0][2]," osma3=",osma[0][3]," osma4=",osma[0][4]," osma5=",osma[0][5]," \n",
        "osma_sig=",osma_sig[0][0]," osma_sig1=",osma_sig[0][1]," osma_sig2=",osma_sig[0][2]," osma_sig3=",osma_sig[0][3]," osma_sig4=",osma_sig[0][4]," osma_sig5=",osma_sig[0][5]
        );
return(0);
}



В эксперте отказывается вывесте значение osma_sig!!? всегда выдает 0! в индикаторе все это работает и без проблем, а в эксперте я уже не знаю что делать?

 
дело в том, что в индикаторе индексные массивы распределяются автоматически.
в эксперте же Вы сами должны определять размер массивов (за исключением тех, куда копируются таймсерии)
для начала уберите двумерные массивы. по логике этого кода Вам хватает одного измерения. то есть, объявите массивы следующим образом
double osma[1000];
double osma_sig[1000];


и везде по тексту уберите первое(из двух) измерение, которое у Вас всегда 0 (спрашивается зачем, ибо в этом случае объявление должно быть [1][1000])