|
19 / 18 / 5
Регистрация: 28.04.2010
Сообщений: 86
|
|
Как создать динамический массив размерностью m на n?12.11.2010, 17:19. Показов 8143. Ответов 20
Метки нет (Все метки)
1
|
|
| 12.11.2010, 17:19 | |
|
Ответы с готовыми решениями:
20
|
|
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
|
|
| 12.11.2010, 17:29 | |
|
Покажите Ваш вариант n*n (а то непонятно какой язык) - тогда покажу как создавать m*n
1
|
|
|
19 / 18 / 5
Регистрация: 28.04.2010
Сообщений: 86
|
||
| 12.11.2010, 17:49 [ТС] | ||
|
int **a = new int *[n]; for(int i = 0; i < n; i++) a[i] = new int [n];
1
|
||
|
9 / 9 / 1
Регистрация: 22.11.2009
Сообщений: 174
|
|
| 12.11.2010, 17:51 | |
|
наверное так же...
0
|
|
|
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
|
||||||
| 12.11.2010, 17:53 | ||||||
|
Тогда m на n будет так:
2
|
||||||
|
62 / 62 / 13
Регистрация: 27.01.2009
Сообщений: 279
|
||||||
| 14.11.2010, 00:26 | ||||||
Сообщение было отмечено Памирыч как решение
Решение
вот на чистом Си, если кому интересно
1
|
||||||
|
9 / 9 / 1
Регистрация: 22.11.2009
Сообщений: 174
|
||||||
| 15.11.2010, 19:41 | ||||||
|
А вот так можно обраться к элементу ?
0
|
||||||
|
236 / 173 / 25
Регистрация: 13.11.2010
Сообщений: 425
|
|
| 15.11.2010, 19:45 | |
|
Нет нельзя. Если n и m это размерность матрицы. Это выход за пределы.
1
|
|
|
9 / 9 / 1
Регистрация: 22.11.2009
Сообщений: 174
|
|
| 15.11.2010, 19:53 | |
|
Если
double ** Arr; размерность n+1, m+1; такое выражение Arr[n][m] - будет корректно? Добавлено через 4 минуты Вообщем, как обратиться к n*m -ому элменту массива через указатель, не разыменовывая его?
0
|
|
|
62 / 62 / 13
Регистрация: 27.01.2009
Сообщений: 279
|
||||||||
| 15.11.2010, 20:00 | ||||||||
|
в Си можно если arr у тебя массив m * n, в даном случае если память выделять динамически arr - будет указателем на указатель. В Си как известно выражение типа arr[n][m] компилятором будет преобразовано в *(*(arr + n) + m) то есть с помощью адресной арифметики мы сначало проходимся по "верхнему массиву указателей" arr[n] (эквивалентно *(arr + n)), так как каждый элемент этого массива является указателем на массив простого типа далее мы идем по верхнему массиву arr[n][m] (эквивалентно *(*(arr + n) + m)) Тут главное помнить что двумерные массивы(и по аналогии многомерные) в Си являются массивами массивов Добавлено через 1 минуту с помощью
если динамический смотри мой пост
1
|
||||||||
|
9 / 9 / 1
Регистрация: 22.11.2009
Сообщений: 174
|
|
| 15.11.2010, 20:02 | |
|
Спасибо за ответ!
Есть ли смысл заполнять нулями массив и в каких случаях это делается? Добавлено через 1 минуту Речь о двумерном динамически созданном...
0
|
|
|
62 / 62 / 13
Регистрация: 27.01.2009
Сообщений: 279
|
||
| 15.11.2010, 20:10 | ||
|
1
|
||
|
9 / 9 / 1
Регистрация: 22.11.2009
Сообщений: 174
|
|
| 15.11.2010, 20:17 | |
|
Там memset(); вроде бы как то по хитрому нужно вызывать, да?
Если просто вызывать memset(); то адресса во второй размерности затираются, так что ли?
0
|
|
|
62 / 62 / 13
Регистрация: 27.01.2009
Сообщений: 279
|
||||||||
| 15.11.2010, 20:30 | ||||||||
Сообщение было отмечено Памирыч как решение
Решение
Добавлено через 1 минуту
1
|
||||||||
|
9 / 9 / 1
Регистрация: 22.11.2009
Сообщений: 174
|
|
| 15.11.2010, 20:37 | |
|
Спасибо, обещаю покавырться в этом коде в доль и поперек
0
|
|
|
62 / 62 / 13
Регистрация: 27.01.2009
Сообщений: 279
|
|
| 15.11.2010, 20:39 | |
|
1
|
|
|
9 / 9 / 1
Регистрация: 22.11.2009
Сообщений: 174
|
||||||
| 15.11.2010, 20:51 | ||||||
|
Еще один вопрос,
Создаю массив
"this application has requested the runtime to terminate it in an unusual way please contact ... " Добавлено через 57 секунд P.S. первая размерность очень большая...
0
|
||||||
|
62 / 62 / 13
Регистрация: 27.01.2009
Сообщений: 279
|
|
| 15.11.2010, 21:00 | |
|
кинь больше кода особенно интересно объявление dMas и значение fsize
1
|
|
|
9 / 9 / 1
Регистрация: 22.11.2009
Сообщений: 174
|
|||||||||||
| 15.11.2010, 21:11 | |||||||||||
|
Если в кратце...
Пытаюсь сделать класс работающий с рядами биржевых данных. Все очень, очень сырое, поэтому не рунайтесь... Функция принимает имя и путь файла и читает его в массив double. Образец файла:
0
|
|||||||||||
|
236 / 173 / 25
Регистрация: 13.11.2010
Сообщений: 425
|
|
| 15.11.2010, 21:20 | |
|
Ежели используете потоки io то тогда уж и файл тоже с помощью потоков считывать лучше.
А как вы потом собираетесь размер массива возвращенного функцией узнать?
1
|
|
| 15.11.2010, 21:20 | |
|
Помогаю со студенческими работами здесь
20
Как создать динамический массив типа string? Как создать класс такого массива? Массив и память. Как создать динамический массив? Re: Как создать динамический массив?
Как создать динамический массив Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2.
Данный документ берёт данные из другого нетипового документа. . .
|
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
|
|
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать программный контроль на предмет проведения документа. . .
|
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача:
1. Реализовать контроль заполнения реквизита. . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: при создании документов установить период списания автоматически. . .
|