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

Добавление строки в двумерный динамический массив (исправить ошибки) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вычисление значения экспоненциальной функции http://www.cyberforum.ru/cpp-beginners/thread676714.html
Пожалуйста, помогите решить в с++: Напишите программу для вычисления значения экспоненциальной функции ex в заданной точке x по формуле: Вычисление суммы продолжать до тех пор, пока очередное слагаемое по модулю не станет меньше 0.0001. Конкретное значение x вводится с клавиатуры.
C++ Вывести на экран индекс элемента Помогите пожалуйста вытащить индекс из списка например : #include <iostream> #include <list> using namespace std; list<int> lst; list<int>::iterator p = lst.begin(); for(p=lst.begin();p!=lst.end();p++) { lst.push_back(some_element);// я не могу вывести сам индекс этого элемента http://www.cyberforum.ru/cpp-beginners/thread676713.html
C++ Вывести на экран таблицу стоимости, например, яблок в диапазоне от N г до M кг с шагом 100 г
Вывести на экран таблицу стоимости, например, яблок в диапазоне от N г до M кг с шагом 100 г., используя циклический алгоритм
Как избавиться от мерцания при выводе массива? C++
вообщем есть массив 20x50. и его нужно часто выводит на консоль и происходит мерцание. что можно сделать чтоб его не было?
C++ Определить максимальный элемент массива и его порядковый номер http://www.cyberforum.ru/cpp-beginners/thread676703.html
Определить максимальный элемент массива В и его порядковый номер (2 варианта, с указателем и без) D, B>0, K<=40;
C++ Заполнение массива У меня есть строка, которую пользователь ввел с консоли как мне каждый элемент строки добавить в массив??? Добавлено через 7 минут или как мне получить доступ к элементу строки ?? К примеру в паскале это можно сделать так: строка, а в с++ не срабатывает подробнее

Показать сообщение отдельно
MrGrig
176 / 159 / 2
Регистрация: 08.10.2012
Сообщений: 422
22.10.2012, 12:17     Добавление строки в двумерный динамический массив (исправить ошибки)
короче сложно обьяснить, ошибки у вас как в мэйне так и в фукнции есть и достаточно вот переделаный код

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int** addRow(int** dmas,int &n,int m)
{
    int i=0,j;
    int **t=new int*[n+1];
    for(;i<n;i++)
    {
        t[i]=new int[m];
        for(j=0;j<m;j++)
            t[i][j]=dmas[i][j];
         
    }
    t[i]=new int[m];
    for(j=0;j<m;j++)
        t[i][j]=rand()%100;
    for(i=0;i<n;i++)
        delete[] dmas[i];
    delete[] dmas;
    n++;
    return t;
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
case 4:
                    {
                    system("cls");
                    printf(" ВВедите размерность матрицы NxM:\n" );
                    scanf("%d %d",&n,&m);
                    int** dmas=memory(n,m);
                    printf(" Исходная матрица:\n" );
                    sozd_mas(dmas,n,m);
                    print_mas(dmas,n,m);            
                    dmas=addRow(dmas,n,m);
                    print_mas(dmas,n,m);
                    getch();
                    break;
                    }
Добавлено через 3 минуты
Цитата Сообщение от snake5129x Посмотреть сообщение
C++
1
addRow(dmas,n,m);
Цитата Сообщение от MrGrig Посмотреть сообщение
C++
1
dmas=addRow(dmas,n,m);
У вас указатель на получившийся массив был не установлен, поэтому даже если функция работала правильно выводился бы все равно предыдущий массив
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru