这个程序编译得很好.当我输入一个数字时,它会在我身上崩溃.name.exe has stopped working但为什么?
int main (void) {
int arrayMax = 0;
printf ("How many numbers will be entered?\n");
scanf ("%i", arrayMax);
int i;
double userInput [arrayMax];
return 0;
}
Run Code Online (Sandbox Code Playgroud)
scanf ("%i", &arrayMax);
Run Code Online (Sandbox Code Playgroud)
这是使用扫描到地址&.您需要将要扫描值的变量的地址传递给.在这种情况下,您的变量是arrayMax,你需要通过这个变量其中的地址scanf()预计在这种情况下,你不这样做,并通过0,这是不是内存位置,你想你的扫描值,所以你看崩溃.写入无效的内存位置会导致崩溃.