c语言数组初始化问题

今天看到这种语句inta[3]={[1]=1,[2]=2}//似乎默认a[0]=0求证实,有没有这种初始化方法... 今天看到这种语句int a[3]={[1]=1,[2]=2}//似乎默认a[0]=0 求证实,有没有这种初始化方法 展开
 我来答
xf331785508
2015-02-05 · 超过40用户采纳过TA的回答
知道小有建树答主
回答量:116
采纳率:0%
帮助的人:83.3万
展开全部
有,C99模式已经支持这种初始化。c99数组新特性之一(非常量表达式初始化数组) :如下:
int a1[3]={1,max(a,b),3}; /*数组第2个元素的值通过函数来确定*/ 
int  al[5]={[2]=100,[1]=3}  /*{0,3,100,0,0} */ 
int a2[5]={[0]=10,[2]=-1,-1,-3} /* {10,0,-1,-1,-3} */ 
int a3[]={0,1,2,3,6,[2]=5}; /*{0,1,5,2,3,6} a3的长度是6 */
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
严光华逯格
2019-04-01 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:27%
帮助的人:847万
展开全部
int
a[5]={1,2,3,4,5};
这样是定义的时候初始化
定义时没初始化,就不能整体赋值了
你这样写当然不对
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
圣马家沟
2015-02-05 · TA获得超过186个赞
知道小有建树答主
回答量:244
采纳率:61%
帮助的人:82.5万
展开全部
有,这个真有,C99中支持,没记错的话
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
赤晴霞蒙男
2019-12-17 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:28%
帮助的人:657万
展开全部
初始化
赋值
是不同的概念
希望楼主每天对这两个概念默念一遍
在任何基础C编程书中都有介绍这两个概念的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
奕义捷桥
游戏玩家

2019-03-12 · 非著名电竞玩家
知道大有可为答主
回答量:1.4万
采纳率:26%
帮助的人:730万
展开全部
C99前,标准不支持VLA,要求定义数组大小时必须使用常量作为大小,不可使用变量
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式