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

Как добавить строку в динамический массив? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вывод без e (6e+10,1.35e+8) http://www.cyberforum.ru/cpp-beginners/thread523192.html
Всем привет, есть вот такой код #include <cstdlib> #include <iostream> #include <math.h> float round(float n) { float t; t=n-floor(n);
C++ Нужна помощь с комментариями. Нужны комментарии и сделать так, чтобы вводилось только пятизначное число. #include "stdafx.h" #include <stdlib.h> #include <memory.h> #include <iostream> using namespace std; int * equ(char * x) { static int nums; http://www.cyberforum.ru/cpp-beginners/thread523186.html
Выяснить, пересекаются ли параболы. C++
Выяснить, пересекаются ли параболы y=ax2+bx+c и y=dx2+ex + f. При положительном ответе найти точки пересечения.
C++ обновления
При каждом выключении компа происходит обновление. Так надо? В разделе "С/С++ для начинающих" рассматриваются, как это ни странно, не особенности поведения компьютера, работающего под неизвестной ОС, а задачи начального уровня по программированию на С/С++. Спросите у кого-нибудь из разбирающихся знакомых, какая у Вас установлена операционная система, и в зависимости от результата разместите...
C++ списки http://www.cyberforum.ru/cpp-beginners/thread523174.html
Построить класс для работы с односвязным списком. Элементы списка - действительные числа. Создать два упорядоченных по возрастанию списка, слить их в один(также упорядоченный по возростанию), построив новый список.
C++ Удалить из массива целых чисел все элементы, являющиеся совершенными числами. Удалить из массива целых чисел все элементы, являющиеся совершенными числа ми. #include <iostream> #include <iomanip> #include <time.h> #include <stdio.h> #include <stdlib.h> using namespace std; void Randomize()//после войд значение не возвращается { подробнее

Показать сообщение отдельно
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
20.03.2012, 18:13     Как добавить строку в динамический массив?
Как уже сказал sandye51, лучше использовать готовые оболочки для массивов.
Если же нужна своя функция, то можно сделать так
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
#include <iostream>
#include <algorithm>
#include <iomanip>
 
template <class T>
T** addRow(T** src, std::size_t& rows, const std::size_t& cols)
{
    T** arr = new T* [rows + 1];
    for(std::size_t i = 0; i < rows; ++i)
    {
        arr[i] = new T [cols];
        std::copy(src[i], src[i] + cols, arr[i]);
        delete[] src[i];
    }
    arr[rows++] = new T [cols];
 
    return arr;
}
 
int main(int argc, const char* argv[])
{
    std::size_t rows = 5;
    std::size_t cols = 5;
 
    int** arr = new int* [rows];
 
    for(std::size_t i = 0; i < rows; ++i)
    {
        arr[i] = new int [cols];
        for(std::size_t j = 0; j < cols; ++j)
        {
            arr[i][j] = i * rows + j;
            std::cout << std::setw(4) << arr[i][j];
        }
        std::cout << std::endl;
    }
    std::cout << std::endl;
 
    arr = addRow(arr, rows, cols);
 
    for(std::size_t i = 0; i < rows; ++i)
    {
        for(std::size_t j = 0; j < cols; ++j)
            std::cout << std::setw(4) << arr[i][j];
        std::cout << std::endl;
        delete[] arr[i];
    }
    delete[] arr;
 
    return 0;
}
 
Текущее время: 23:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru