【发布时间】:2020-09-18 14:52:02
【问题描述】:
完全是编程新手,目前正在关注 Youtube 上的 CS50 课程,所以我无法访问他们的 CS50 沙盒。我目前在讲关于数组的第 2 课。根据教授的说法,以下代码应该可以正常编译和运行,但是在我的 PC 上的 Visual Studio 2019 社区版上,我遇到了错误 C2057,预期为常量表达式;和错误 c2466,编译时无法分配常量大小为 0 的数组。
请帮助解释为什么在 CS50 在线沙盒中,这些代码可以,而在 VS 2019 中却不行?是我的代码写得不对,还是 VS2019 的工作方式与 CS50 沙盒不一样?我在某处读到 VS2019 与 C99 不兼容或类似的东西,这与手头的问题有关吗?
PS:今天还看到VS2019将支持C11和C17,这个新的更新会有帮助吗?
非常感谢!
这些是我的代码:
#include <stdio.h>
const int N = 5;
int main(void)
{
double scores[N] = { 59, 60, 90, 85, 87 };
double total_score = 0;
for (int i = 0; i < N; i++)
{
total_score += scores[i];
}
double average = total_score / N;
printf("Average score is : %.1f,", average);
}
【问题讨论】:
-
如果您有 github 帐户,您应该能够使用 CS50 IDE (ide.cs50.io)
-
感谢您的信息,我会尝试的。
标签: arrays c global-variables cs50