int NumOfCourses = 0;
int i = 0;
int total = 0;
int main()
{
printf("How many courses");
scanf_s("%d", NumOfCourses);
for (i = 0; i < NumOfCourses; i++)
{
total += i;
}
int Courses[i][3];
它不允许我将 i 用作数组行的值,因为它不是常量。
您使用
的结构称为可变长度数组 (VLA(。它对于 C99 编译器是必需的,对于 C11 编译器是可选的。所有旧版本的C(K&%,C89,C90,C95(都不知道VLA。因此,这取决于编译器遵循哪种标准。通常,编译器知道多个版本,您可以选择标准。尝试-std=c99
选项。