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

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

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.64
Starstuck
 Аватар для Starstuck
4 / 4 / 0
Регистрация: 01.02.2012
Сообщений: 124
01.12.2012, 16:42     Динамическое создание массива (одномерного и двумерного) #1
Скажите, пожалуйста, как создать динамически два массива (одномерный и двумерный) и как к ним обращаться?
пусть их размерности будут [N] и [N][M]
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.12.2012, 16:42     Динамическое создание массива (одномерного и двумерного)
Посмотрите здесь:

Представление одномерного массива как двумерного C++
C++ Динамическое выделение памяти для двумерного массива
Заполнение одномерного массива из двумерного по определенному закону C++
C++ Передача части двумерного массива в функцию, как одномерного
C++ Заменить все элементы массива, попадающие в интервал, нулем. Выполнить двумя способами: с помощью одномерного и двумерного массива.
Найти минимальные элементы в каждом столбце произвольного двумерного массива и записать их в виде одномерного C++
C++ Формирование одномерного массива из двумерного
Динамическое создание двумерного массива string C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
01.12.2012, 16:58     Динамическое создание массива (одномерного и двумерного) #2
Одномерный:
C++
1
2
3
4
5
int *a = new int [3];
     a[0]=4; 
     *a=3; //или так обратиться (только к нулевому элементу, для остальных нужно к a прибавлять индекс нужного элемента)
                  //"*" должна быть перед выражением,т.е *(выражение)
     cout<<a[0]<<endl;
Двумерный:
C++
1
2
3
4
5
int **b = new int* [3];
    b[0] = new int [5];
    b[0][0] = 5;
    **b = 7; //или так (опять же к нулевому), указателем на указатель
    cout<<b[0][0];
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4925 / 2668 / 243
Регистрация: 29.11.2010
Сообщений: 7,421
01.12.2012, 17:03     Динамическое создание массива (одномерного и двумерного) #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
 
int main()
{
    int N, M;
    std::cin>> N>> M;
    int *A = new int[N]; // создаем массив A[N]
    delete []A; // очищаем память, выделенную под динамический массив
 
    int **B = new int*[N]; // создаем массив указателей размером N
    for (int i=0; i < N; i++)
        B[i] = new int[M]; // каждый указатель теперь ссылается на массив, размерностью M
 
    //очищаем память
    for (int i=0; i < N; i++)
        delete []B[i];
    delete []B;
    return 0;
}
Yandex
Объявления
01.12.2012, 17:03     Динамическое создание массива (одномерного и двумерного)
Ответ Создать тему
Опции темы

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