鱼C论坛

 找回密码
 立即注册
查看: 2233|回复: 20

[已解决]数组

[复制链接]
发表于 2021-9-11 18:34:21 | 显示全部楼层
你这个是数组溢出,把其他内存修改了,
你可以把a当成一个指针,由于内存是连续的,所以内存表现如下图

                               
登录/注册后可看大图

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-12 01:45:07 | 显示全部楼层
梦回连营 发表于 2021-9-11 19:28
a[1]的长度不是为1吗, 你画的图是2个吗?

a[1]是2个,a[0]和a[1],是从0开始的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-13 21:01:10 | 显示全部楼层
routty 发表于 2021-9-12 08:43
就是一个,不是两个。哈哈

建议你学好基础,西方国家是从0开始数的,0-9是10个,写循环只会写i<10,而不是i<=10.....
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-13 21:02:07 | 显示全部楼层
routty 发表于 2021-9-12 08:43
就是一个,不是两个。哈哈

或者你sizeof一下,就知道了,int是4字节,2个元素就是8字节
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-13 21:29:06 | 显示全部楼层
routty 发表于 2021-9-13 21:21
int a[2] 有几个元素?这里的2是指个数,代表的元素是a[0],a[1]。这里从0开始是为了指针计算的方便(就 ...

好像是了..太久没玩这玩意了...
总的来说你这问题就是溢出,
[]这个东东别填就行,让编译器自己去算多少个,
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-13 23:15:37 | 显示全部楼层
routty 发表于 2021-9-13 21:54
长时间不接触有些语法会忘记的,我也是!

我那这个去问那些阿里华为的大佬们了,他们都是统一2个元素,哈哈哈哈,笑死,都会写各种API了,基础问题一大堆人都错我继续去打别人脸去了,
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-29 10:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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