Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.02.2009, 19:51   #1
ciaonataha
Форумчанин
 
Регистрация: 12.02.2009
Сообщений: 150
По умолчанию Rabota s matritsami

Vsem dobrogo vechera ili dnya.

Ya dolgna rabotat' s matritsami tipa double GHSERp[][][][] i L[0][0][1][1][0][1][0];
Dlya menya vstaet problema, kak ya mogu ee zadat' cherez new double[n], esli
ona u menya eshe i ne n*n, a n*m...
Ya zadala classe matrix:
Код:
typedef double *ligne;
ligne *lignes;
a potom:
   n = nl;

   m = nc;

   lignes = new ligne[n];  // allocations

   for (unsigned int i=0; i<n; i++)

   {

      lignes[i] = new double[m];

      for(unsigned int j=0; j<m; j ++)

         lignes[i][j] = 0;
I xotela bi prevesti etu matritsu GHSERp[p][k][i][j] k vidu GHSER(i,j)

Oshibka, kotoruu vidaet:"declaration of 'GHSERp' as multidimensional array must have bounds for all dimensions except the firs"

Модератор: тег CODE

Последний раз редактировалось MaTBeu; 20.02.2009 в 20:17.
ciaonataha вне форума Ответить с цитированием
Старый 20.02.2009, 20:21   #2
MaTBeu
Eclipse Foundation
Старожил
 
Аватар для MaTBeu
 
Регистрация: 19.09.2007
Сообщений: 2,604
По умолчанию

Во-первых: матрицу с одной из размерностей 0 нельзя задавать.
Во-вторых: Динамическое выделение памяти
Код:
double ****a;
a = new double ***[10];
for(int i=0; i<10; i++)
   a[i] = new double **[10];
for(int i=0; i<10; i++)
for(int j=0; j<10; j++)
   a[i][j] = new double *[10];
for(int i=0; i<10; i++)
for(int j=0; j<10; j++)
for(int k=0; k<10; k++)
   a[i][j][k] = new double[10];
В итоге у вас матрица a[10][10][10][10];
Но такой способ выделения памяти лучше не использовать. Используйте статическое выделение памяти.
MaTBeu вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц