Напишите обратную функцию, которая принимает целочисленный массив и его длину в качестве аргументов. Ваша функция должна изменить содержимое массива, оставив обратные значения в исходном массиве и ничего не вернет.Передача измененных значений массивов обратно в главную функцию в C++
#include<iostream>
using namespace std;
void printArray(int a[], const int n)
{
for(int i=0;i<n;i++)
{
cout<<a[i];
i!=n-1 ? cout<<", " : cout<<"";
}
}
void reverse(int a[], const int n)
{
int reverse[n];
for(int i=0;i<n;i++)
{
reverse[n-1-i]=a[i];
}
a = reverse;
}
int main()
{
int *a,n;
cin>>n;
a = new int[n];
for(int i=0;i<n;i++)
a[i]=0;
a[0]=1;
reverse(a,n);
printArray(a,n);
delete [] a;
a = NULL;
return 0;
}
После вызова функции обратного хода массив из основного не изменяется, пожалуйста, совет! :(
Вам необходимо передать массив по ссылке, а не по значению. – Jamal
@Jamal, но также избежать утечки памяти и потенциально ссылаться на мертвый объект – vlad
@vlad: О, да, здесь используется и «новый». Я пропустил это. – Jamal