-4

私が書いているプログラムの一部では、通常の方法ではなく、malloc を使用して配列を作成する必要があります。ユーザーに数値を入力してもらい、その数値に MAX という名前を割り当て、malloc() を使用して 2 から入力された数値までの配列を作成する必要があります。これをコーディングするにはどうすればよいですか?

4

2 に答える 2

2

malloc()配列のサイズ (バイト単位) を指定し、戻り値を適切な型のポインターに割り当てることによって、"配列" を作成します。これを 1 バイトより大きいオブジェクトの配列にする場合は、オブジェクトの数にオブジェクトのサイズを掛けることができます。これは、sizeof演算子で取得できます。

たとえば、次のintように 50 個のオブジェクトの「配列」を作成できます。

int *ar = malloc(50 * sizeof (int) );
于 2013-10-15T04:58:27.547 に答える
0

次の方法でそれを行うことができます。

T *dynamic_memory;
.......  //Get the desired array size from user input and store in 'array_max_size'
dynamic_memory=malloc((sizeof(T) * array_max_size);

T: 配列のデータ型

dynamic_memoryその後、目的に合わせて使用​​できます。

于 2013-10-15T05:02:08.737 に答える