array という整数ポインタと size という整数変数を含む arrayData という構造体を作成します。
次のヘッダーを持つ関数を作成します: arrayData* createArray(int size)。この関数内で、新しい arrayData 構造体のスペースを malloc します。次に、入力変数を要素数として使用して配列を作成する必要があります。最後に、malloc された arrayData ポインターの変数を、配列と配列サイズに等しく設定する必要があります。最後に、malloc された arrayData 構造体のポインタを返します。
上記の用語のコードは次のとおりです。
struct arrayData
{
int *array;
int size;
};
struct arrayData* createArray(int size)
{
struct arrayData *str = (struct arrayData*)malloc(sizeof(struct arrayData));
int a = 10;
str->array = (int*)malloc(size * sizeof(int));
str->size = size;
for ( a = 0; a < 10; a++ )
{
str->array[i] = a;
}
return str;
}
さらに、次のようなことをしたい: 次のヘッダーを持つ関数を作成します: void printArray(arrayData *data)。この関数は、入力変数の配列内のすべての値を出力します。出力は次のようになります。 value1 value2 value3 value4
次のヘッダーを持つ関数を作成します: void freeMem(arrayData *data)。この関数では、malloc されたすべてのメモリを解放します。
どうすればこれを行うことができますか?