C语言 自定义全局变量里面的结构体数组的长度 10

关于全局变量里的结构体数组是否可以自定义数组长度intn;structA{inta;charb[];}S[n+1];voidmain(){scanf("%d",&n);}... 关于全局变量里的结构体数组是否可以自定义数组长度
int n;
struct A
{
int a;
char b[];
}S[n+1];

void main()
{
scanf("%d",&n);
}
如何申请动态空间
展开
 我来答
DoramiHe
2018-03-25 · 知道合伙人互联网行家
DoramiHe
知道合伙人互联网行家
采纳数:25335 获赞数:59535
2011年中山职业技术学院毕业,现担任毅衣公司京东小二

向TA提问 私信TA
展开全部
你没有申请struct的空间,只是声明了啊,在main里加入:
student stu[10]; 就OK了
怎么可能不需要啊,你说链表中需要,那是肯定的
像这样,简单点说就是你把student看成是跟int,float,double一样的基本类型,这样你就会处理了,你认为int stu[10];这样的东西都不需要申请空间吗?如果不申请,那好比这样:
int *a;//这里只有个指针,并没有实际的空间
a=new int(10);这样才做了申请空间的动作;
以上2个语句何以:
int a=10;//这样便达到了上边2条语句的效果

但有一点不同就是new分配的是堆空间,这跟直接int i=10;不一样!
但效果是一样的!
如果是C语言的全局变量,这就不需要申请空间,全局变量生命周期在整个程序开始到结束!
追问
嗯我知道。但是我定义结构体数组需要定义在全局变量啊。我剩下的所有函数都需要写入这个结构体数组里面。
所以我想在main函数里面传入值来定义结构体数组的长度。可以实现吗
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式