gpt4 book ai didi

c - 防止数组写入不存在的索引

转载 作者:太空宇宙 更新时间:2023-11-04 06:21:38 24 4
gpt4 key购买 nike

我有一组数字,例如:

int a[10]={1,1,1,1,1,1,1,1,2,1};

我找到 2 的位置,然后将 indexof(2)+4 和 -4 的值也更改为 2。

问题是 indexof(2)+4 不存在,这意味着 c 将覆盖一些不属于数组的内存。如何阻止 c 写入超过数组长度的索引?

最佳答案

在 C 中,没有内置检查(即在没有程序员参与的情况下发生)来确保数组索引保持在范围内。

如果你想访问(读取或写入)a[i] 那么你需要编写代码检查 i 是一个有效的索引,然后再这样做,不要如果 i 无效,则不会访问 a[i]。这意味着确保该值介于 0n-1 之间,其中已知 n 是数组中元素的数量。

有多种选项可以获取或设置n 的值。每个都有适用性限制。

关于c - 防止数组写入不存在的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33842050/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com