Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 30.10.2014
Сообщений: 8
1

Как обратиться к массиву, находящемуся внутри функции?

30.10.2014, 14:17. Просмотров 2004. Ответов 9
Метки нет (Все метки)

Есть функция в которой как локальная переменная масив, как вызвать это массив в маине?


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int test(int *a)
{ int arr[10];
   какие то манипуляции с масивом
   return *a;
  return *arr;
}
 
 
int main()
{
???? 
 
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.10.2014, 14:17
Ответы с готовыми решениями:

Можно ли обратиться к массиву внутри матрицы
допустим есть матрица int matrix = {{1,2,3,4,5},{6,7,8,9,10}}; и мне нужно обратится к первому...

Как обратиться к объекту, находящемуся в ArrayList?
public class 0bj{ String name; } public static void main(String args) {...

Как обратиться к переменной, объявленной внутри функции?
Есть вот такой код: void __fastcall TForm1::FormCreate(TObject *Sender) {...

Обратиться к фрагменту находящемуся в ViewPager
Внутри onCreate происходит проверка физических размеров устройства. Если функция проверки...

9
85 / 85 / 33
Регистрация: 21.09.2013
Сообщений: 339
30.10.2014, 14:23 2
C++
1
2
return *a;
return *arr;
Вернёт только a.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int * test (int * a)
{
// манипуляции
return a;
}
 
void main ()
{
int * a // заданный массив;
int * b = test (a); // b будет результатом обработки а через функцию test
 
delete [] a;
delete [] b;
}
0
0 / 0 / 0
Регистрация: 30.10.2014
Сообщений: 8
30.10.2014, 14:27  [ТС] 3
*a это другой массив
с ним тоже идут манипуляции и он возвращается
а надо достать именно локальный массив который был в функции aar[10]
0
36 / 36 / 25
Регистрация: 30.10.2013
Сообщений: 211
30.10.2014, 14:30 4
v37xc9, а что мешает вернуть оба массива?
0
85 / 85 / 33
Регистрация: 21.09.2013
Сообщений: 339
30.10.2014, 14:31 5
v37xc9,
C++
1
2
return *a; // выполнит и выйдет из функции
return *arr; // сюда он не попадёт вообще
1
0 / 0 / 0
Регистрация: 30.10.2014
Сообщений: 8
30.10.2014, 14:34  [ТС] 6
return *a;
return *arr;
Типо того? сказали вернет только *a

Добавлено через 1 минуту
а как тогда вернуть оба массива? и как юзать их в мейне?
0
36 / 36 / 25
Регистрация: 30.10.2013
Сообщений: 211
30.10.2014, 14:42 7
Лучший ответ Сообщение было отмечено v37xc9 как решение

Решение

v37xc9, вот эта тема поможет тебе
Как вернуть сразу 2 значения из функции?
1
0 / 0 / 0
Регистрация: 30.10.2014
Сообщений: 8
30.10.2014, 15:26  [ТС] 8
int test(int *a)
{ int arr[10];
какие то манипуляции с масивом

return *arr;
}


int main()
{ int arr[10];
????

}


Как использовать этот массив? Там муссор
0
4341 / 2007 / 255
Регистрация: 01.03.2013
Сообщений: 5,391
Записей в блоге: 22
30.10.2014, 15:30 9
Лучший ответ Сообщение было отмечено v37xc9 как решение

Решение

Да не надо таскать массивы туда-сюда, надо их определять в месте вызова, а в функцию передавать указатели на них. Например, как здесь Перечислить все разбиения натурального числа на натуральные слагаемые
1
36 / 36 / 25
Регистрация: 30.10.2013
Сообщений: 211
30.10.2014, 15:30 10
v37xc9, указатель передавай на массив
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.10.2014, 15:30

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Обратиться к методу находящемуся в UserControl
К примеру в форме есть кнопка "Рассчитать" при её нажатии нужно обратится к методу Raschet1...

Как обратиться к массиву?
Хотелось бы узнать как работает данный массив. Что такое PAD_MAX . И как обращаиться к данному...

Как обратиться к массиву?
Есть массив res типа obj. и не могу вывести в label то что помечено красным. Как это сделать?...

Как обратиться к массиву
вот я создал динамический массив: int a1 = 4; // строк int a2 = 7; // столбцов // создадим...


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

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

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