C语言有关数组的一个小问题
我的目的是创建一个数组,这个数组的大小由用户输入的一个值确定,但是会出现错误,请告诉我为什么会错,谢谢~我写的:报错:...
我的目的是创建一个数组,这个数组的大小由用户输入的一个值确定,但是会出现错误,请告诉我为什么会错,谢谢~
我写的:
报错: 展开
我写的:
报错: 展开
5个回答
展开全部
因为C语言的数组长度定义 要求编译时就确定下来,所以不能用变量定义数组长度,
你可以改成 int number[123];
你可以改成 int number[123];
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不能这个配置吧。
scanf("%d",&couner);
int* number=(int*)malloc(counter*sizeof(int));
记得使用完毕要 free(number);
scanf("%d",&couner);
int* number=(int*)malloc(counter*sizeof(int));
记得使用完毕要 free(number);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C语言不支持变长数组,数组的长度只能是常量。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-09-28
展开全部
因为这个编译器不支持
追问
那该怎么写,编译器才支持呢?
追答
换gcc的编译器,或者clang。要不然就用
scanf("%d",&counter);
int* number=malloc(counter*sizeof(int));
。。。
free(number);
这样的写法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询