如何将整数数组分配给特定地址?

时间:2017-03-27 12:28:00

标签: c function pointers struct

我正在尝试为整数数组分配内存

ptr=malloc(length*sizeof(int));

这将给我指向已分配内存的指针。我知道我可以使用*(ptr + k)访问值,其中k是整数数组中的位置。但是有没有办法定义一个新数组

int allocarray[length];

然后为allocarray分配地址ptr,以便我可以使用

访问存储的值
allocarray[k]

?我尝试了以下不起作用:

allocarray=ptr;

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

如果您像上面那样声明一个数组,它将自动分配。但是,如果你说:

int *allocarray = (int *)malloc(length*sizeof(int));

您仍然可以使用语法allocarray[k]

访问元素 k