当前位置: 代码迷 >> C语言 >> 数组初始化
  详细解决方案

数组初始化

热度:112   发布时间:2007-10-01 15:20:42.0
数组初始化
.初始化数组时,未使用静态存储。
int a[3]={0,1,2};
这样初始化数组是不对的。C语言规定只有静态存储(static)数组和外部存储(exterm)数组才能初始化。应改为:
static int a[3]={0,1,2};
在论坛上看到上面的话,但我在tc里不加static可以直接初始化
为什么?
搜索更多相关的解决方案: int  static  论坛  静态  

----------------解决方案--------------------------------------------------------
"C语言规定只有静态存储(static)数组和外部存储(exterm)数组才能初始化。"
引自哪里?
----------------解决方案--------------------------------------------------------

从 c常见问题里看到的


----------------解决方案--------------------------------------------------------
把原文贴出来吧,偶想看看
----------------解决方案--------------------------------------------------------

就在c语言论坛的那个c常见问题的帖子里。


----------------解决方案--------------------------------------------------------

这是错的


----------------解决方案--------------------------------------------------------

补充一下,针对ANSI/ISO 标准 C来说已经没有这个规定了,好象记得曾看到过资料在ANSI/ISO 标准 C之前是有这个规定的


----------------解决方案--------------------------------------------------------
不过那样规定看似还是有些道理的
现在没必要那麻烦了
----------------解决方案--------------------------------------------------------
应该没有那样的规定.不要看到什么东西都相信,要 选择一下.有的不确定的可以想办法验证一下.
----------------解决方案--------------------------------------------------------

哇,数组只能用静态的不是麻烦了``


----------------解决方案--------------------------------------------------------
  相关解决方案