问答详情
源自:6-10 练习题

int x[][3]={1,2,3,4};

请问int x[][3]={1,2,3,4};这样定义的数组是什么样的?

提问者:牛牛和虫虫 2015-08-24 08:39

个回答

  • 才疏气短啊
    2017-04-13 23:04:14

    1  2   3  

    4  0   0             x[0][0]=1      x[0][1]=2        x[0][2]=3       x[1][0]=4

  • onemoo
    2015-08-24 14:27:39

    这样定义x为一个数组,其元素是“含有3个int的数组”。后面braces initializer中的数会依次赋予数组的各个元素,所以1 2 3分给了x的第一个元素,该元素就是一个{1, 2, 3}数组。还剩一个4,但x的第二个元素仍是一个“含有3个元素的数组”,所以x的第二个元素就是{4, 0, 0}数组(数组初值不足的用0补全)。 整个x数组含有2个元素,它们是含有3个元素的数组,x共有6个int,这点你可以用sizeof x来验证。

  • 刘伶
    2015-08-24 10:23:16

    int真的可以么?

  • DearZzg
    2015-08-24 09:07:26

    int *x[3] 这样定义不是没事找事吗?