Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
posol_7
16 / 16 / 13
Регистрация: 19.11.2014
Сообщений: 156
#1

Какие есть виды массивов (кроме одномерных, двумерных и двумерных ступенчатых массивов)?

09.03.2016, 19:21. Просмотров 338. Ответов 9
Метки нет (Все метки)

Какие есть виды массивов (кроме одномерных, двумерных и двумерных ступенчатых массивов)?
И почему такая вот запись является "чуть" ошибочной?
C++
1
2
3
int **p = new int*[N];
    for (int i(0); i<N; i++)
        p[i] = new int[M];
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.03.2016, 19:21
Ответы с готовыми решениями:

Алгоритмы и программы по обработке одномерных и двумерных массивов
Здравствуйте. Пишу Вам уже в который раз и прошу о помощи. НЕобходимо написать...

Алгоритмы и программы по обработке одномерных и двумерных массивов
Здравствуйте. Помогите, пожалуйста, решить задачу. Вот текст: В одномерном...

Алгоритмы и программы по обработке одномерных и двумерных массивов
Здравствуйте! Помогите пожалуйста решить задачу. Вот текст:осуществить...

Решение лабораторных на С++ посредством циклов, одномерных и двумерных массивов
Друзья! Я конечно понимаю что не один я тут такой &quot;новенький остолоп&quot;, но всё...

Какие существуют ограничения на размер двумерных массивов?
Пишу в Visual Studio 2010 #include &lt;iostream&gt; using namespace std; int...

9
sab1ch
BrainOverflow
124 / 128 / 63
Регистрация: 31.03.2013
Сообщений: 556
09.03.2016, 19:31 #2
posol_7, это выделение динамической памяти под двумерный массив.
Кликните здесь для просмотра всего текста
А, точно, ошибочно то, что память не освободили.

Другие виды массивов: массив массивов массивов, массив массивов массивов массивов, массив массивов массивов массивов массивов, продолжать? Если массивы наскучили, то учите контейнеры STL.
1
posol_7
16 / 16 / 13
Регистрация: 19.11.2014
Сообщений: 156
09.03.2016, 19:59  [ТС] #3
Sabnik18, вот те строчки о которых вы говорили, - я это знаю.
C++
1
2
3
for (int i(0); i<N; i++)
        delete[] p[i];
    delete[] p;
Но вот проблема состоит в том, что есть очень маленькая ошибка при выделении памяти, на которую компилятор не ругается. Я вот не могу понять "КАКАЯ?"...
0
КОП
471 / 364 / 117
Регистрация: 15.08.2010
Сообщений: 997
Завершенные тесты: 1
09.03.2016, 20:03 #4
Цитата Сообщение от posol_7 Посмотреть сообщение
Я вот не могу понять "КАКАЯ?"...
ну так полный код, ввод-вывод, скрины. А так гадать можно долго
0
posol_7
16 / 16 / 13
Регистрация: 19.11.2014
Сообщений: 156
09.03.2016, 20:06  [ТС] #5
КОП,
Кликните здесь для просмотра всего текста
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#include "stdafx.h"
#include "conio.h"
#include "iostream"
#include <ctime>
 
using namespace std;
 
int main()
{
    srand(time(0));
    int N, M;
    int min, max;
 
    cout << "\tRandom matrix" << endl;
    cout << "Enter i: ";
    cin >> N;
    cout << "Enter j: ";
    cin >> M;
    
    int **p = new int*[N];
    for (int i(0); i<N; i++)
        p[i] = new int[M];
 
    cout << "\tWe have" << endl;
    for (int i(0); i<N; i++)
    {
        for (int j(0); j<M; j++)
        {
            p[i][j] = rand() % 9 + 1;
            cout << p[i][j] << ' ';
            max = p[i][j];
            min = p[i][j];
        }
        cout << endl;
    }
 
    for (int i(0); i<N; i++)
    {
        for (int j(0); j<M; j++)
        {
            if (p[i][j] > max)
                max = p[i][j];
            if (p[i][j] < min)
                min = p[i][j];
        }
    }
        
    cout << "Min = " << min << endl;
    cout << "Max = " << max << endl;
 
    for (int i(0); i<N; i++)
        delete[] p[i];
    delete[] p;
 
    _getch();
    return 0;
}
0
nd2
2831 / 2400 / 1055
Регистрация: 29.01.2016
Сообщений: 8,037
09.03.2016, 20:08 #6
Цитата Сообщение от posol_7 Посмотреть сообщение
И почему такая вот запись является "чуть" ошибочной?
Тут нет массивов.
0
nd2
2831 / 2400 / 1055
Регистрация: 29.01.2016
Сообщений: 8,037
09.03.2016, 20:14 #7
Липпман "Язык программирования С++. Базовый курс".
0
Миниатюры
Какие есть виды массивов (кроме одномерных, двумерных и двумерных ступенчатых массивов)?  
posol_7
16 / 16 / 13
Регистрация: 19.11.2014
Сообщений: 156
09.03.2016, 20:17  [ТС] #8
nd2, это потому, что я динамически выделил память, а потом рандомом задал значение для каждого элемента матрицы?
0
nd2
2831 / 2400 / 1055
Регистрация: 29.01.2016
Сообщений: 8,037
09.03.2016, 20:23 #9
Цитата Сообщение от posol_7 Посмотреть сообщение
это потому, что я динамически выделил память
То, что выделяется через new [], к встроенному типу данных массив не имеет отношения. Размер массива всегда известен на этапе компиляции, и является частью этого типа данных. То, что выделяется через new [], только условно называют массивами.
1
posol_7
16 / 16 / 13
Регистрация: 19.11.2014
Сообщений: 156
09.03.2016, 20:31  [ТС] #10
nd2, уже понял) Огромное спасибо!
0
09.03.2016, 20:31
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.03.2016, 20:31

Разность двумерных массивов
Добрый день! Недавно я начал изучать С++, а до этого писал на делфи! Задали...

Использование двумерных массивов
вроде компилируется, но когда программа загружается, то она выбивает, пишет...

Сложение двумерных массивов
помогите пожалуйста с прогой!!! Написать функцию, которая складывает...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

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