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

Измерение размера динамического массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Обработка файла со структурами... http://www.cyberforum.ru/cpp-beginners/thread244877.html
Нужно создать файл(БД) и выполнить обработку в соответствии с заданием. Обработка заключается в выборе из файла и выдаче на экран требуемой информации. Задание Формат данных Данные о книгах в виде...
C++ Найти сумму цифр в числе Задание соответствует названию темы. Вот что у меня получилось: #include <stdio.h> #include <conio.h> void main() { int a,b,c; printf("Введите a \n"); scanf("%d",&a); c=0; do http://www.cyberforum.ru/cpp-beginners/thread244870.html
ЕГЭ Информатика С2 (Массивы) C++
Здравствуйте, решаю задачи для подготовки к ЕГЭ,все вроде бы легко,но проблема в том, что все ответы на Паскале. Решал такую задачу, вроде результат получается правильный, но решение вроде другое....
C++ Как на языке "С" удалить в строке все цифры 3 перед первой точкой и заменить все '+' после певрой точки на '-'?
Помогите плиз...
C++ Есть в языке "С" аналоги функций Pos() и Delete()? http://www.cyberforum.ru/cpp-beginners/thread244821.html
Если есть, то напишите.
C++ MessageBox Int COUNT=20; MessageBox(NULL, COUNT + L" очков. ", L"Title ", MB_OK); Почему не выводит значение переменной COUNT в окне MessageBox? Как можно в окне MessageBox вывести несколько строк? подробнее

Показать сообщение отдельно
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
18.02.2011, 19:48
Вот вполне себе без темповой переменной в её обычном понимании - второй массив служит не для временного хранения, а фактически становится постоянным массивом и происходит лишь одно копирование. Недостаток - надо передавать не только новый размер, а ещё и старый, чтобы корректно скопировать. Но всё же надо использовать именно вектор, раз на плюсах пишете.
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
#include <iostream>
 
template< typename T >
void my_realloc(T *&, size_t, size_t);
 
int main()
{
    int *arr = new int [10];
 
    for (size_t i = 0; i < 10; ++i)
        arr[i] = i;
 
    for (size_t i = 0; i < 10; ++i)
        std::cout << arr[i] << "  ";
 
    std::cout << std::endl;
 
    my_realloc(arr, 10, 15);
 
    for (size_t i = 10; i < 15; ++i)
        arr[i] = i;
 
    for (size_t i = 0; i < 15; ++i)
        std::cout << arr[i] << "  ";
    
    std::cout << std::endl;
 
    delete [] arr;
 
    return 0;
}
 
template< typename T >
void my_realloc(T *&arr, size_t size, size_t new_size)
{
    T *new_arr = new T [new_size];
    size = size < new_size ? size : new_size;
 
    for (size_t i = 0; i < size; ++i)
        new_arr[i] = arr[i];
 
    delete [] arr;
 
    arr = new_arr;
}
4
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru