配列を関数に渡す必要があります。関数内で、新しい整数配列を動的に割り当てます。元の配列の最初のエントリが新しい配列の5番目のエントリになり、元の配列の2番目のエントリが新しい配列の4番目のエントリになるように、文法上、元の配列の値を新しい配列に逆順に割り当てます、 等々。関数に新しい配列の内容を表示します。関数から新しい配列を返さないでください。元の配列の内容を変更しないでください。新しい配列の内容を割り当てて表示するときは、配列へのポインタを使用します。つまり、逆参照を使用します。動的に割り当てられた配列は削除されます。新しい整数配列を動的に割り当てることに苦労します
以下は私が今行っているフレームワークの一種ですが、どのように進行するのか分かりにくいです。
最初の配列は配列内に配列を表示しますが、他の関数に渡して逆の順序で表示する方法とは苦労しています。私は近いところにいたと思うが、もっと混乱すると、私は実際にそれを悪化させ、私が達成しようとしているものから遠ざかったと思う。あなたのコード、その後、あなたが関数内の配列を割り当て、割り当て解除しなければならない場合
void dispArrRev(int *val, int size)
{
for (int x = size-1; x >0; x--)
{
cout << x << " = " << *(val + x) << endl;
}
cout << endl;
return;
}
:
#include "stdafx.h"
#include <iostream>
using namespace std;
void dispArr(int *, int);
void dispArrRev(int *, int);
void main()
{
int arrA[5] = { 100, 200, 300, 400, 500 };
dispArr(arrA, 5);
dispArrRev(arrA, 5);
system("pause");
return;
}
void dispArr(int *val, int size)
{
for (int x = 0; x < size; x++)
{
cout << x << " = " << *(val + x) << endl;
}
cout << endl;
return;
}
void dispArrRev(int *val, int size) //call by pointer
{
//Stare at white space until light bulb appears :S :|
}
あなたが '変更することができます(int型のx = 0; X <サイズ; X ++)'は逆の配列を通過します注文 –
@appleapple s関数内に動的配列を作成することが含まれているようです。 –
"配列を関数に渡す必要があります。" - これまでのところ関数は 'int * val'をとります。 "関数内で、新しい整数配列を動的に割り当てます。" - あなたの番です。整数配列を動的に割り当てるコードを記述します。 –