【发布时间】:2014-04-23 09:20:04
【问题描述】:
如何创建动态数组? 我尝试使用该代码:
#include <stdlib.h>
#include <stdio.h>
int main()
{
int size=0,*value,array[size];
printf("How many array elements do you need?");
scanf_s("%i",&size);
value = (int *)malloc(size*sizeof(int));
printf("Your array has now %i elements.Here are the contents:",size);
for(i=0;i<size;i++)
{
printf("%i",array[i]);
}
return 0;
}
我怎么能意识到这一点?我的程序(Visual Studio 2013)出错了。
【问题讨论】:
-
缩进您的代码并在大多数语句的末尾添加所需的';'。
-
数组数组初始化为大小为0的数组,注意动态的是指针值指向的。可以像数组一样使用指针来查看动态数组的值,只是机会在printf array[i]到value[i]
-
了解
arrays in C和using malloc。 -
顺便说一下,您将看到的值将是完全随机的,因为 C 不会将所有数组值都放在 0 中