0
2を配列に分割する関数を作成する必要があります。 int splitarr(int * array、int ogsize、int size1、int * arr1、int * arr2) 私が配列を持っているタスクは、関数呼び出しの前に作成してはいけません - > arr1とarr2の値はNULLでなければならず、関数内に配列を作成しなければなりません。関数のパラメータ値NULLをcに渡します
2を配列に分割する関数を作成する必要があります。 int splitarr(int * array、int ogsize、int size1、int * arr1、int * arr2) 私が配列を持っているタスクは、関数呼び出しの前に作成してはいけません - > arr1とarr2の値はNULLでなければならず、関数内に配列を作成しなければなりません。関数のパラメータ値NULLをcに渡します
nullを渡す代わりに、ポインタへのポインタを渡します。関数の署名は、次のようになります。
int splitarr(int *array, int ogsize, int size1, int **arr1, int **arr2);
ダブルスターに注意してください。今、あなたはそれを呼び出すとき
int splitarr(int *array, int ogsize, int size1, int **arr1, int **arr2) {
int* a1 = malloc(size1 * sizeof(int));
int* a2 = malloc((ogsize - size1) * sizeof(int));
// perform some copying operations here
*arr1 = a1;
*arr2 = a2;
}
::あなたの関数は、このような何かをし
int *resultOfSplit1;
int *resultOfSplit2;
splitarr(originalArr, originalSize, size1, &resultOfSplit1, &resultOfSplit2);
これは、これら2つの変数の新しい割り当てられた配列を格納します。
「サイズ1」とは何ですか? – coderredoc
size1は、size1 = 3の場合に配列を分割するサイズポイント、最初の配列は3 elemts、2番目の配列は残り –