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

Функция возвращающая массив - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Класс с добавлением функций http://www.cyberforum.ru/cpp-beginners/thread1491190.html
День добрый! Возникла вот какая нужда. Есть объекты одного класса, взаимодействие этих объектов обычно происходит одинаково, но возможно что с тем или иным обёктом нужно взаимодействовать по особому. Эта функция для взаимодействия будет уникальна только для одного объекта. Вопрос, можно ли как-то добавить функцию к какому-то объекту или может быть привязать к нему ссылку на функцию что ли....
C++ Отсортировать по убыванию элементы последовательности, расположенные после второго отрицательного числа 2.В произвольной матрице - отсортировать по убыванию элементы последовательности, расположенные после второго отрицательного числа. http://www.cyberforum.ru/cpp-beginners/thread1491172.html
Формирование массива из двух других массивов C++
1.Ввести два целочисленных массива − по 10 элементов в каждом. Сформировать новый массив, на четныхместах которого будут элементы снечетными индексами из первого массива, а нанечетных – с четными индексами из второго.
Обработка массива C++
Есть задание: Разработать программу, которая формирует массив (границы диапазона задает пользователь) и производит с ним следующие действия: а) выводит четные элемент массива ; б) выводит отрицательные элементы массива; в) выводит произведение элементов массива . Собственно сам код для этого задания, есть пару комментариев но нужно знать что делает каждая строчка кода. Если есть косяк по...
C++ Метод последовательных итераций http://www.cyberforum.ru/cpp-beginners/thread1491151.html
Решить нелинейное уравнение f(x)=cos(x)-(-x+5) методом последовательных итераций с погрешностью 0.002. Помогите пожалуйста,мне нужен программный код в си++,ну чтоб очень понятный был.
C++ Выбрать пару векторов или массивов, которая даст минимальное скалярное произведение Добрый день, подскажите пожалуйста как создать n векторов или массивов, если изначально не известно сколько их будет? Вот условие задания: Даны p различных векторов одинаковой размерности. Написать программу, которая находит ту пару векторов из заданного набора, которая обладает минимальным скалярным произведением. подробнее

Показать сообщение отдельно
zss
Модератор
Эксперт С++
6359 / 5923 / 1920
Регистрация: 18.12.2011
Сообщений: 15,227
Завершенные тесты: 1
01.07.2015, 16:34
Нельзя возвращать адреса нединамических локальных переменных,
т.к. после выхода из функции они становятся недействительными.

Один из возможных вариантов:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int *convertToBin()
{
    int* a=new int[5];
    for(int i=0;i<5;i++)
         a[i]=i;
    return a;
}
 
int main()
{
    int *arr = convertToBin();
 
    for (int i = 0; i < 5; i++)
    {
        std::cout << arr[i] << std::endl;
    }
    delete[] arr; // К сожалению, в этом случае надо массив удалять
    system("pause");
    return 0;
}
А лучше так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
void convertToBin(int* a)
{
    for(int i=0;i<5;i++)
         a[i]=i;
}
 
int main()
{
    int arr[5];
    convertToBin(arr);
 
    for (int i = 0; i < 5; i++)
    {
        std::cout << arr[i] << std::endl;
    }
    system("pause");
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru