d选项为什么是正确的,答案是c,AB选项可以理解
C选项为什么错你应该知道吧?我就直接说D选项了,在C语言中,多维数组用这两种方式初始化是等效的,
int a[3][4] = {
{0, 1, 2, 3} ,
{4, 5, 6, 7} ,
{8, 9, 10, 11}
};
和
int a[3][4] = {0,1,2,3,4,5,6,7,8,9,10,11};
对于多维数组的初始化,我们根本不需要这么多花括号。在《C和指针》第162页作者有指出,用花括号只是为了好识别罢了,直接上图。
3 回答2k 阅读✓ 已解决
2 回答3.9k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答3.4k 阅读
1 回答1.6k 阅读✓ 已解决
只说一句: 数据的初始化 按行,一行一行的初始化, 我可以不知道有多少行, 但是我必须知道一行放几个数据(也就是有几列), 这是二维, 然后扩展3维, 我可以不知道有几页数据,但是我必须知道一页数据存储几行几列.
---华丽分割线---
大于等于二维的,第一个都可以省略. 其他的都不可以省略. 第一个不一定是行数. 只是打个比喻,这么理解容易记忆.
掌握方法,学会类推,比什么都重要;别死记答案.