王三岁w 发表于 2020-6-4 16:26:18

不知道错在哪了

【例1】编写程序,测试下列数组的定义方式是否正确。如果不正确,请将改正后的内容写在右侧空白处。
(1)
#include <stdio.h>
void main()
{
        int n;
        scanf(“%d”,&n);
        int a;
        ……
}
(2)
#include <stdio.h>
#define M 10
void main()
{
        int a;
……
}
(3)
#include <stdio.h>
void main()
{
   int a;
……
}
通过这一实验,可以说明什么问题?

Cool_Breeze 发表于 2020-6-4 16:34:34

C99以下不支持动态数组,2没有问题,第1,3需要开辟内存空间或者c99

Darth_EF 发表于 2020-6-4 16:35:52

楼上说得对

小甲鱼的铁粉 发表于 2020-6-4 17:27:47

楼上的楼上说的对

405794672 发表于 2020-6-5 11:11:03

不对吧,这3也是可以的吧?运行一下就知道。1不行。编译器不给。就算你先输入了这个变量,变量有值也不行。我试过很多次,它丫的就是不行!但2和3本质上是一样的吧?它都是a。数组个数只能用常量表达式。他们说3不行,看来我得去试试了
页: [1]
查看完整版本: 不知道错在哪了