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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 19, средняя оценка - 4.79
shilovec5377
29 / 54 / 1
Регистрация: 26.05.2011
Сообщений: 752
#1

динамический 2-х мерный массив - C++

30.06.2011, 22:27. Просмотров 2548. Ответов 24
Метки нет (Все метки)

помогите плиз вот код , нужно составить динамический 2-х мерный массив
C++
1
2
3
4
5
6
double **a
int n,m,l;
scanf("%d%d",&n,&m);
a=(double **) colloc (m,sizeof(double*));
for (i=0;i<m;i++)
a[i]=(double *) colloc(n,sizeof (double))
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.06.2011, 22:27
Здравствуйте! Я подобрал для вас темы с ответами на вопрос динамический 2-х мерный массив (C++):

Пяти мерный динамический массив - C++
Ребят помогите сделать пяти мерный динамический массив, я просто не в курсе как это делать.

memcpy/CopyMemory + 2-мерный динамический массив - C++
Третий день в ступоре из-за ругательства компилятора. Есть проблема: нужно скопировать данные из одного двумерного динамического массива в...

Программа при исполнении выдает ошибку и прерывается! (2-мерный динамический массив) - C++
Помогите пожалуйста! Задали написать программку, я ее написала, и только в одном фрагменте &quot;зависла&quot;. Для начала надо задать 2-мерный...

Создать динамический 2-мерный массив, заполнить его случайным образом, сортировать столбцы по возрастанию их суммы - C++
Создать динамический 2-мерный массив, заполнить его случайным образом, сортировать столбцы по возрастанию их суммы. Именуйте темы...

n-мерный массив - C++
Вопрос заключается в следующем: Как задать n-мерный массив в описании класса, если на начальной стадии неизвестна его размерность? Или...

5-ти мерный массив - C++
написал функцию Проблема в том, что содержимое массива создается локально, а мне надо глобально То есть в строке 64 выводит все...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Jupiter
Каратель
Эксперт С++
6553 / 3973 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
30.06.2011, 22:42 #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
//именуйте переменные осмысленно и делайте отступы межлу операторами
int row, col;
scanf("%d%d",&row, &col);
double** matr = (double**) malloc(row * sizeof(double*));
for (int i = 0; i < row; i++)
    matr[i]=(double*) malloc(col * sizeof(double));
//some code
for (int i = 0; i < row; i++)
{
    free(matr[i]);
    matr[i] = NULL;
}
free(matr);
matr = NULL;
shilovec5377
29 / 54 / 1
Регистрация: 26.05.2011
Сообщений: 752
01.07.2011, 13:09  [ТС] #3
Выдает ошибки:
C++
1
2
error C3861: 'malloc': identifier not found 
error C3861: 'free': identifier not found
grizlik78
Эксперт С++
1908 / 1440 / 111
Регистрация: 29.05.2011
Сообщений: 2,996
01.07.2011, 13:17 #4
C
1
#include <stdlib.h>
shilovec5377
29 / 54 / 1
Регистрация: 26.05.2011
Сообщений: 752
01.07.2011, 13:27  [ТС] #5
Здесь задаеться кол. колонок и столбцов
C++
1
scanf("%d%d",&row, &col);
grizlik78
Эксперт С++
1908 / 1440 / 111
Регистрация: 29.05.2011
Сообщений: 2,996
01.07.2011, 13:28 #6
Колонки и столбцы это, обычно, одно и то же
Число строк и столбцов. Да.
shilovec5377
29 / 54 / 1
Регистрация: 26.05.2011
Сообщений: 752
01.07.2011, 13:33  [ТС] #7
Вот этот код задает же отномерный массив?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int row, col;
scanf("%d%d",&row, &col);
double** matr = (double**) malloc(row * sizeof(double*));
for (int i = 0; i < row; i++)
    matr[i]=(double*) malloc(col * sizeof(double));
 
for (int i = 0; i < row; i++)
{
    free(matr[i]);
    matr[i] = NULL;
}
free(matr);
matr = NULL;
Подскажите плиз как сделать 2-х мерный

Добавлено через 1 минуту
Цитата Сообщение от grizlik78 Посмотреть сообщение
Колонки и столбцы это, обычно, одно и то же
Число строк и столбцов. Да.
Извините перепутал
grizlik78
Эксперт С++
1908 / 1440 / 111
Регистрация: 29.05.2011
Сообщений: 2,996
01.07.2011, 13:34 #8
Двухмерный это. От твоего кода, кстати, не сильно отличается. Только вместо неправильно написанной функции calloc с двумя параметрами используется malloc с одним.
shilovec5377
29 / 54 / 1
Регистрация: 26.05.2011
Сообщений: 752
01.07.2011, 13:43  [ТС] #9
так этот код задает 2-х мерный массив?
grizlik78
Эксперт С++
1908 / 1440 / 111
Регистрация: 29.05.2011
Сообщений: 2,996
01.07.2011, 13:45 #10
Да. Его можно рассматривать и как одномерный массив указателей на массивы double, и как двухмерный массив double.
Обращение к элементу как обычно: matr[i][j]
shilovec5377
29 / 54 / 1
Регистрация: 26.05.2011
Сообщений: 752
01.07.2011, 13:50  [ТС] #11
так у меня в коде только 1 цикл только по row
C++
1
for (int i = 0; i < row; i++)
Второй цикл здесь нужен? и куда его можно вставить? подскажите плиз.
grizlik78
Эксперт С++
1908 / 1440 / 111
Регистрация: 29.05.2011
Сообщений: 2,996
01.07.2011, 13:56 #12
после строки
C
1
// some code
идёт освобождение выделенной памяти. Это должно быть где-нибудь в конце функции, когда массив больше не нужен.
shilovec5377
29 / 54 / 1
Регистрация: 26.05.2011
Сообщений: 752
01.07.2011, 14:15  [ТС] #13
Цитата Сообщение от grizlik78 Посмотреть сообщение
Это должно быть где-нибудь в конце функции, когда массив больше не нужен.
Вставить второй цикл?
grizlik78
Эксперт С++
1908 / 1440 / 111
Регистрация: 29.05.2011
Сообщений: 2,996
01.07.2011, 14:17 #14
Строки 8—14 из кода Maxwe11 во втором посте
shilovec5377
29 / 54 / 1
Регистрация: 26.05.2011
Сообщений: 752
01.07.2011, 14:35  [ТС] #15
Цитата Сообщение от grizlik78 Посмотреть сообщение
во втором посте
что это значит?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.07.2011, 14:35
Привет! Вот еще темы с ответами:

m - мерный массив - C++
Дано n точек m мерного пространства, каждая точка имеет массу. Найти координаты точки наиболее удаленной от точки центра масс. Помогите...

1 мерный массив - C++
В одномерном массиве, состоящем из n целых элементов, вычислить: 1) произведение элементов массива с четными номерами; 2) сумму...

2-х мерный массив. - C++
Дана целочисленная прямоугольная матрица. Определить: 1) количество столбцов, содержащих хотя бы один нулевой элемент; 2) номера строк,...

N-мерный массив в векторе - C++
Здравствуйте. Можно ли в векторе хранить n-мерный массив. т.е. я с клавиатуры ввожу размерность n массива и потом заполняю сам массив.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
01.07.2011, 14:35
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru