如何在 C 中使用 malloc() 创建特定大小的数组



我正在编写的程序的一部分需要使用malloc而不是常规方式创建一个数组。我必须让用户输入一个数字,为该数字指定名称 MAX,并使用 malloc() 创建一个数组,从数字 2 到输入的数字。我将如何编写代码?

通过

指定数组的大小(以字节为单位)并将返回值分配给适当类型的指针,可以创建具有malloc()的"数组"。如果您打算将其设置为大于一个字节的对象数组,则可以将对象数乘以对象的大小,这可以使用 sizeof 运算符获得。

例如,您可以创建一个包含五十个int对象的"数组",如下所示:

int *ar = malloc(50 * sizeof (int) );

你可以通过以下方式做到这一点:

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用于您的目的。

相关内容

  • 没有找到相关文章

最新更新