Как присвоить массиву сразу все его значения?

 

Вообщем как присвоить массиву сразу все его значения?

double a, b, c;
double m[3];
 
int start()
  {
   a =  5;// Тута вообщето формулы стоят
   b =  8;// но это не особо важно
   c = -3;//
 
   m[3] = {MathAbs(a-b), MathAbs(a-c), MathAbs(b-c)};// как правильно эту строку записать?
 
   return(0);
  }

ПРи таком раскладе имеем такие ошибки:


Просвятите дурака, что к чему.
Я понимаю что мона почленно поприсваивать значения, но как то не красиво это..... :(, тем более что подобных массивов у меня несколько и значений они имеют больше.

 


Это объявление массива, в котором всего 3 элемента: m[0],m[1] и m[2]:

double m[3];
А здесь :
   m[3] = {MathAbs(a-b), MathAbs(a-c), MathAbs(b-c)};// как правильно эту строку записать?
производится попытка обращения к элементу массива, которого нет.
 
Так вот я и спрашиваю, как правильно записать?
Если это возможно?
ни m[]= ни m= , не катят.
Что только почленно ? m[0]=....; m[1]=...... ; m[2]=...... ; m[3]=...... ; и т.д. ?
 
Например, так:
int m[3]={23,6,18};
 

Hell, так можно делать только при инициализации (присвоение значений элементам массива в момент объявления массива) , при этом сами значения должны быть представлены константами или константными выражениями.

int m[3]={23,6,18};

Т.е. выражения типа :

   m[3] = {MathAbs(a-b), MathAbs(a-c), MathAbs(b-c)};

с целью "массового" присвоения не допускаются.

А в дальнейшем - присвоение поэлементно.:

    m[0] = 2.0;
    m[1] = 3.0;
    ...
 
Понятно.
Всем спасибо!
Причина обращения: