在这里动态存储器的讨论:"Intro to C Pointers and Dynamic Memory"可变尺寸的阵列VS释放calloc用C
作者指出:
像这样的存储器块可有效地用作一个更灵活的阵列。这种方法实际上在现实世界的C程序中更为常见。它也比“可变大小的数组”
类型存储器块他所谈论的是这样更可预测的和灵活的:
const int size = 5;
int * array = calloc(size, sizeof(int));
,然后使用另一个指针进行迭代阵列之上:
int * index = array;
for (i = 0; i < size; i++) {
*index = 1; // or whatever value
index++;
}
我的问题是如何是该方法比标准可变尺寸的阵列更好这样?:
int array[variable];
或动态:
char name[] = "Nick";
笔者并没有真正摆脱多的光,为什么我应该更喜欢前一种方法后者。或者更具体地说:它如何更“可预测和灵活”?
[malloced阵列VS.的可能的复制可变长度数组](http://stackoverflow.com/questions/16672322/malloced-array-vs-variable-length-array) – 2016-04-23 07:37:46