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

динамические массивы - C++

Восстановить пароль Регистрация
 
bretba
 Аватар для bretba
63 / 58 / 5
Регистрация: 24.07.2011
Сообщений: 343
29.01.2012, 15:21     динамические массивы #1
Никогда сильно не работал с динамическими массивами.Но это время пришло)

К примеру дана матрица из 8x8 элементов.Как к ней добавить еще один столбец или строку?Чтобы размер получился 8x9 или 9x8
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.01.2012, 15:21     динамические массивы
Посмотрите здесь:

C++ динамические массивы ?
Динамические массивы. C++
Динамические массивы C++
C++ динамические массивы
Динамические массивы C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dimcoder
Полярный
 Аватар для dimcoder
449 / 422 / 66
Регистрация: 11.09.2011
Сообщений: 1,108
29.01.2012, 15:27     динамические массивы #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
    int **a;
    a = new int*[8];
    for (int i = 0; i < 8; i++)
       a[i] = new int[8];
    a[6][7] = 132;
    cout << a[6][7] << endl;
    delete [] a;
    a = new int*[8];
    for (int i = 0; i < 8; i++)
        a[i] = new int[9];
    a[7][8] = 10;
    cout << a[7][8];
    system("PAUSE");
    return EXIT_SUCCESS;
}
bretba
 Аватар для bretba
63 / 58 / 5
Регистрация: 24.07.2011
Сообщений: 343
29.01.2012, 15:28  [ТС]     динамические массивы #3
Объяснишь?
dimcoder
Полярный
 Аватар для dimcoder
449 / 422 / 66
Регистрация: 11.09.2011
Сообщений: 1,108
29.01.2012, 15:36     динамические массивы #4
Цитата Сообщение от bretba Посмотреть сообщение
Объяснишь?
ОК.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
    int **a;                       //Создаем указатель на указатель
    a = new int*[8];           //a - указатель на массив из 8 элементов типа int*
    for (int i = 0; i < 8; i++)    //Теперь проходим по этим 8 элементам,
       a[i] = new int[8];          //и делаем так что каждый из них тоже указывает на массив из 8 элементов
    a[6][7] = 132;         //Присваеваем
    cout << a[6][7] << endl;       //Проверяем
    delete [] a;           //Обязательно очищаем выделенную под массив память
    a = new int*[8];               //По аналогии
    for (int i = 0; i < 8; i++)    //По аналогии
        a[i] = new int[9];         //делаем так что каждый из них тоже указывает на массив из 9 элементов
    a[7][8] = 10;
    cout << a[7][8];
    delete [] a;                   //А в прошлом посте забыл :pardon:
    system("PAUSE");
    return EXIT_SUCCESS;
}
bretba
 Аватар для bretba
63 / 58 / 5
Регистрация: 24.07.2011
Сообщений: 343
29.01.2012, 15:49  [ТС]     динамические массивы #5
Понял вродеты создаешь динамический вектор,а потом задаешь,что каждый элемент этого вектора имеет тоже вектор.Получается матрица)
C++
1
  int **a;                       //Создаем указатель на указатель
вот это только не понял
dimcoder
Полярный
 Аватар для dimcoder
449 / 422 / 66
Регистрация: 11.09.2011
Сообщений: 1,108
29.01.2012, 15:59     динамические массивы #6
Всего лишь указатель на другой указатель.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
    int **a;
    int *b;
    int c;
    b = &c;
    a = &b;
    **a = 10;
    cout << c << endl;
 
    system("PAUSE");
    return EXIT_SUCCESS;
}
А вообще поищи на cplusplus.com про указатели, там есть отличные примеры.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.01.2012, 17:20     динамические массивы
Еще ссылки по теме:

Динамические массивы C++
Динамические массивы C++
C++ Динамические массивы

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

Или воспользуйтесь поиском по форуму:
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
29.01.2012, 17:20     динамические массивы #7
Цитата Сообщение от bretba Посмотреть сообщение
Никогда сильно не работал с динамическими массивами.
Попробуйте
C++
1
std::vector
Добавлено через 6 минут
Ну или
C++
1
boost
Yandex
Объявления
29.01.2012, 17:20     динамические массивы
Ответ Создать тему
Опции темы

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