c语言,数组定义时,可以这样写arr[ ] ,不写下标,可以么?为什么?

2025年02月28日 13:19
有4个网友回答
网友(1):

只有在直接初始化的时候,可以。
比如 arr[] = {1, 2, 3};
没有初始化时就不可以。
大概就是要知道数组的大小,如果直接就初始化了,那也等于知道数组大小。
更根本的原因就是,语言和编译器的编写者这么设定,并在里面这么实现的。他们喜欢这种方式。

网友(2):

可以,但是得列出数组元素,系统根据元素自动分配存储空间。

网友(3):

可以啊,你这样写系统帮你分配内存空间,不过你这样写的时候得在那时初始化。

网友(4):

不行,你不告诉它你这个数组有多大它怎么给你安排存储空间