c语言定义数组时可以不写下标也不初始化赋值么?(如:int a[];)

c语言定义数组时可以不写下标也不初始化赋值么?(如:inta[];)这样写数组元素的大小系统会根据随后的赋值自动识别么?... c语言定义数组时可以不写下标也不初始化赋值么?(如:int a[];)

这样写数组元素的大小系统会根据随后的赋值自动识别么?
展开
 我来答
kof2001kop
推荐于2018-04-08 · TA获得超过126个赞
知道答主
回答量:152
采纳率:0%
帮助的人:143万
展开全部
不可以。

但作为一个函数参数时,则可以:
void foo(int bar[])
{}

此时的bar,编译器并不会把它当成数组,而会把它当成指针。
百度网友97df5c0af
2013-02-15 · TA获得超过568个赞
知道小有建树答主
回答量:490
采纳率:0%
帮助的人:562万
展开全部
不行!用C#用多了吧?
能做到不声明长度的数组都是一些有运行时环境的语言。里面的数组在C层面上是一个对象,其自身不仅保存数据,还保存了自己的长度。
所以C是不能不给下标来初始化数组的。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
a476485314
2013-02-14 · TA获得超过618个赞
知道小有建树答主
回答量:154
采纳率:0%
帮助的人:50万
展开全部
C语言定义数组时必须有数组类型,名以及数组的容量。 可以不赋初值,系统默认为0。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
l521088816
2013-02-14 · TA获得超过1772个赞
知道小有建树答主
回答量:780
采纳率:0%
帮助的人:1062万
展开全部
不能这样定义,你后面那个问题也就没有意义了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lilanchao
2013-02-15 · TA获得超过2280个赞
知道小有建树答主
回答量:2224
采纳率:0%
帮助的人:783万
展开全部
还是直接把数组长度写上去吧,如果不确定长度就尽量写得长一点
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式