Форум программистов, компьютерный форум CyberForum.ru

Создание динамического двумерного массива - C++

Восстановить пароль Регистрация
 
vanishrap
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 19
05.04.2014, 22:42     Создание динамического двумерного массива #1
C++
1
2
3
4
5
void CreateArray(double **DynamicArray, int n){ //???
    double **DynamicArray = new double* [2*n];
    for (int Count = 0; Count < 2*n; Count++)
    DynamicArray[Count] = new double [2*n];
}
В чем, собственно, тут ошибка? Подскажите пожалуйста, а то долбусь и не могу понять, хотя знаю что где-то сильно туплю)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
aex
88 / 77 / 29
Регистрация: 06.03.2014
Сообщений: 223
05.04.2014, 23:01     Создание динамического двумерного массива #2
C++
1
2
3
4
5
// объявление двумерного динамического массива на 10 элементов:
float **ptrarray = new float* [2]; // две строки в массиве
    for (int count = 0; count < 2; count++)
        ptrarray[count] = new float [5]; // и пять столбцов
//  где ptrarray  – массив указателей на выделенный участок памяти под массив вещественных чисел  типа float
zss
Модератор
Эксперт С++
 Аватар для zss
5956 / 5561 / 1788
Регистрация: 18.12.2011
Сообщений: 14,210
Завершенные тесты: 1
05.04.2014, 23:01     Создание динамического двумерного массива #3
C++
1
2
3
4
5
6
7
double** CreateArray(int n)
{ 
    double **DynamicArray = new double* [2*n];
    for (int Count = 0; Count < 2*n; Count++)
         DynamicArray[Count] = new double [2*n];
   return DynamicArray;
}
IrineK
Заблокирован
05.04.2014, 23:46     Создание динамического двумерного массива #4
Цитата Сообщение от vanishrap Посмотреть сообщение
где-то сильно туплю
Вы пытаетесь создать массив N x N или 2N x 2N ?

Добавлено через 8 минут
Логичней, получив N, создавать N x N

Вся процедура выглядит так:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
double** CreateArray(int n)
{       int i,j;
    double **array = new double *[n];
    for (i = 0; i < n; i++)
            array[i] = new double [n];
    for (i = 0; i < n; i++)
        for (j = 0; j < n; j++)
            array[i] = 0;
    return array;
}
 
void DeleteAaray (double **array, int n)
{   for (int i = 0; i < n; i++)
            delete [] array[i];
    delete [] array;
}
 
int main()
{   int N = 10;
    int **myArray = CreateArray (N);
 
//что-то делаем
 
    DeleteArray (myArray, N);
    return 0;
}
Yandex
Объявления
05.04.2014, 23:46     Создание динамического двумерного массива
Ответ Создать тему
Опции темы

Текущее время: 14:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru