関数内で宣言されたとき、メインでdelete []を使用:、最初の関数」新しいintは[]私の最初の仕事はこれです
readNumbers、STDから10個の数字のセットを読むことです:: CINとそれらを使用して、動的に割り当てられた長さ10のintの配列を初期化します(動的割り当てはヒープ上にあります)。関数は配列へのポインタを返さなければなりません。結構です
、しかし私は、その後のことを行う必要があります
「この問題の主な機能は、あなたのprintNumbers関数に新しい配列を渡し、最後にアレイを削除、あなたのreadNumbers関数を呼び出す必要があります。」
しかし、新しいint []が関数内で宣言されているときに、メインでの削除の処理方法がわかりません。ここに私のコードの関連部分があります。
int main(){
printNumbers(readNumbers(),10);
delete[] numbers;
}
int *readNumbers(){
int * numbers;
numbers = new int [10];
for (int i = 0; i < 10; i++){
int userinput;
cin >> userinput;
*(numbers+i) = userinput;
}
return numbers;
}
と
は明らかにメインで[]削除要求が私は解決策が分から午前、構文エラーです。
これは構文エラーではありません。それは宣言されていない変数を使用するだけです。 – Barmar
これを終えたら、自分自身をうまく回して、新しい形の配列形式がまったく存在しないことを忘れてください(最終学年を終えた後、先生に教えるためにもっと良いことを教えるようにしてください) 。 –
Cコンパイラでコンパイルしないでください.C – dave