Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
senderlender
5 / 5 / 1
Регистрация: 03.12.2013
Сообщений: 50
#1

Добавление строки в двумерный массив - C++

16.03.2014, 20:01. Просмотров 533. Ответов 3
Метки нет (Все метки)

Ребят, уже неделю мучаюсь, не могу добавить в двумерный динамический массив строку, без использования векторов и т.д. Чисто на циклах, дополнительных массивах, и функций new и delete.

Вот к примеру есть заполненный массив массив:

C++
1
2
3
4
5
6
7
8
int **mass = new int* [height];
    for(int i=0; i<height; i++)
        mass[i] = new int [mass_size[i]];
 
    for(int i=0; i<height; i++)
        for(int j=0; j<mass_size[i]; j++)
            cin>>mass[i][j];
    cout<<endl;
Я думал добавить строку приблизительно так, не обращайте внимания на функцию зеркала и условного оператора:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
for(int i=0; i<height; i++)
    {
        if(func_mirror(mass[i], mass_size[i])==false)
        {
            mass[height+1] = new int [mass_size[i]];
            for(int j=0; j<mass_size[i]; j++)
                mass[height+1][j]=mass[i][mass_size[i]-j];
            for(int j=1; j<i; j++)
            {
                int *mass_memory = new int [200];
                mass_memory=mass[height+1-j];
                mass[height+1-j]=mass[height+2-j];
                mass[height+2-j]=mass_memory;
                delete []mass_memory;
            }
        }
    }
Но я вылетает ошибка обращения к адресу и дебагере всякий мусор, а не то что нужно, прошу ну очень помочь. Заранее благодарю.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.03.2014, 20:01
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Добавление строки в двумерный массив (C++):

Добавление строки в двумерный динамический массив (исправить ошибки) - C++
Выкладываю лаб. Помогите исправить ошибки в функции с добавлением строки в двумерный динамический массив , уже противно смотреть эту на...

Добавление столбца в двумерный массив - C++
Всем привет! Помогите пожалуйста, нужно добавить столбец после каждого четного столбца матрицы #include &quot;stdafx #include&lt;iostream&gt; ...

Добавление данных в двумерный массив из файла - C++
int tab = { { ' ', 'a', 'b', 'c', }, { 0, 1, 2, 3 }};Как данный массив заполнить тем же самым только из файла?

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

Чем отличаются двумерный символьный массив и массив указателей на строки - C++
Двумерный символьный массив и массив указателей на строки. Собственно чем они отличаются? Заранее спасибо.

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

3
AGS17
7 / 5 / 1
Регистрация: 03.11.2012
Сообщений: 74
16.03.2014, 20:08 #2
Не совсем понял, что требуется сделать. И если требуется ввести строку, то почему массив int?
0
senderlender
5 / 5 / 1
Регистрация: 03.12.2013
Сообщений: 50
16.03.2014, 20:24  [ТС] #3
Вот например есть массив из 5 строк, а нужно в конец добавить шестую.

Добавлено через 1 минуту
Я попытался сделать это и заполнить эту строку вот так:

C++
1
2
3
 mass[height+1] = new int [mass_size[i]];
            for(int j=0; j<mass_size[i]; j++)
                mass[height+1][j]=mass[i][mass_size[i]-j];
0
zss
Модератор
Эксперт С++
6531 / 6093 / 2007
Регистрация: 18.12.2011
Сообщений: 15,845
Завершенные тесты: 1
16.03.2014, 20:30 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Можно так
C++
1
2
3
4
5
6
int **massnew = new int* [height+1];// создаем новый массив указателеей
    for(int i=0; i<height; i++)
        massnew[i] = mass[i]; // копируем старые указатели в начало массива
    delete[] mass; // больше не нужен
    mass=massnew; // переобозначаем
   mass[height] = new int [mass_size[height-1]]; // добавляем новую строку
1
16.03.2014, 20:30
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.03.2014, 20:30
Привет! Вот еще темы с ответами:

Двумерный массив, сумма строки - C++
2. В двумерном массиве хранится информация о баллах, полученных спортсменами-пятиборцами в каждом из пяти видов спорта (в первой строке –...

Добавление строки в массив - C++
Здравствуйте! есть массив char arr. как в него записать через цикл энное количество строк?

Добавление строки в массив - C++
Добрый день! Поставил себе задачу написать класс для работы со строками (куча разнообразных методов). В данный момент застрял над...

Двумерный массив, перемещение строки и столбца - C++
Привет. Создается массив и нужно поменять местами 1 строчку с 1 столбцом. Кто может подсказать как это сделать в этом коде, тут элементы...


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

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

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