这个程序正在崩溃。在 C 中使用 n 长度数组是否有一些限制?它在 C++ 中工作(使用 cin cout)。谢谢你的时间。
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int n;
printf("n\n");
scanf("%d\n",n);
int arr[n];
system("PAUSE");
return 0;
}
您的代码还有另一个问题:
scanf("%d\n", n);
// ^^
// should be &n
scanf
需要一个指针,而您正在传递int
.
正如我在我的另一个答案中指出的那样,请参见此处
使用时应避免使用格式说明符(或)scanf()
以外的字符,因为当您在 scanf 中的引号之间写任何内容时,它希望您输入的部分与原样完全相同,这对于新手来说尤其成问题。%d
%s
您的答案中最重要的错误是:
scanf("%d",n)
^
您必须传递要为其输入的变量的地址,所以它应该是&n
.