鱼C论坛

 找回密码
 立即注册
查看: 1330|回复: 9

[已解决]二维数组

[复制链接]
发表于 2023-4-14 10:56:05 From FishC Mobile | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
int a[][3]={{4},{},{7}}
我想知道这个二维数组赋值的错误在哪,我的理解是没有定义的地方不是会默认赋值0吗
最佳答案
2023-4-14 11:01:31
您的代码中的二维数组没有明确地指定行的数量,但从初始化列表中可以推断出行数。

确实,在数组的初始化过程中,没有明确赋值的元素会被默认设置为0。这里的问题主要是初始化列表的格式。

按照您给出的代码,应该这样定义和初始化二维数组:
int a[][3] = { {4, 0, 0}, {0, 0, 0}, {7, 0, 0} };

您的代码中,大括号的使用方式是不正确的。这是修改后的正确代码:
int a[][3] = { {4}, {}, {7} };

这样定义和初始化二维数组后,数组中没有明确赋值的元素将被默认设置为0。以下是数组的具体值:
a[0][0] = 4, a[0][1] = 0, a[0][2] = 0
a[1][0] = 0, a[1][1] = 0, a[1][2] = 0
a[2][0] = 7, a[2][1] = 0, a[2][2] = 0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-14 11:01:31 | 显示全部楼层    本楼为最佳答案   
您的代码中的二维数组没有明确地指定行的数量,但从初始化列表中可以推断出行数。

确实,在数组的初始化过程中,没有明确赋值的元素会被默认设置为0。这里的问题主要是初始化列表的格式。

按照您给出的代码,应该这样定义和初始化二维数组:
int a[][3] = { {4, 0, 0}, {0, 0, 0}, {7, 0, 0} };

您的代码中,大括号的使用方式是不正确的。这是修改后的正确代码:
int a[][3] = { {4}, {}, {7} };

这样定义和初始化二维数组后,数组中没有明确赋值的元素将被默认设置为0。以下是数组的具体值:
a[0][0] = 4, a[0][1] = 0, a[0][2] = 0
a[1][0] = 0, a[1][1] = 0, a[1][2] = 0
a[2][0] = 7, a[2][1] = 0, a[2][2] = 0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-14 11:05:13 | 显示全部楼层
每行三个值你一行只给一个
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-4-14 17:47:16 From FishC Mobile | 显示全部楼层
a327904410 发表于 2023-4-14 11:05
每行三个值你一行只给一个

但是没给的值会自动给0呀
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-15 01:15:36 | 显示全部楼层
1203081549 发表于 2023-4-14 17:47
但是没给的值会自动给0呀

那是当处于空的时候才会自动给吧,如果你只给一两个系统不知道你要放在哪个位置的,所以报错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-15 01:17:51 | 显示全部楼层
a327904410 发表于 2023-4-15 01:15
那是当处于空的时候才会自动给吧,如果你只给一两个系统不知道你要放在哪个位置的,所以报错

不知道是不是这么理解,我没这么用过
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-17 17:44:08 From FishC Mobile | 显示全部楼层
第二行你设为0,什么都没有应该不行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-4-19 17:59:43 From FishC Mobile | 显示全部楼层
remake111 发表于 2023-4-17 17:44
第二行你设为0,什么都没有应该不行

我问了老师,确实不能没有,什么都没有不会默认给0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-4-19 18:00:08 From FishC Mobile | 显示全部楼层
a327904410 发表于 2023-4-15 01:15
那是当处于空的时候才会自动给吧,如果你只给一两个系统不知道你要放在哪个位置的,所以报错

你好,我问了老师,如果一个值也不给不会默认给0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-20 12:00:39 From FishC Mobile | 显示全部楼层
好像不给也可以赋值0.我上机试过了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-7 15:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表