【发布时间】:2017-11-15 08:54:25
【问题描述】:
我想在 C 中的数组中创建数组,而数组中没有预定义的字符数或输入。 以下是我的代码:
{
int noOfStudents,noOfItems;
int *grades;
int i;
char a[];
printf("Please enter number of students\n");
scanf("%d", &noOfStudents);
printf("Please enter number of items\n");
scanf("%d", &noOfItems);
for (i = 0; i < noOfStudents; i++)
{
a[i] = (int *)malloc((sizeof(int))*noOfItems);
}
我被抛出一个错误
c(2133): 'a': 未知大小
如何通过malloc在数组内成功创建数组?
【问题讨论】:
-
什么数组?字符还是整数??首先使用
int **a = malloc(sizeof(int *)*nbOfStudents);。你想要一个二维数组。 -
@Sarah Collins 你在这里大约三年了,到现在为止你这么糟糕吗?:)