数组索引使用错误:arr[i>3]的实际索引值是什么?
实际数组索引值解析
你写的错误代码里,i > 3是一个布尔判断表达式,在多数编程语言中,布尔值会被隐式转换为数值来作为数组索引:
- 当
i的数值大于3时,i > 3结果为真,会被转为1,实际访问的是arr[1] - 当
i的数值小于等于3时,i > 3结果为假,会被转为0,实际访问的是arr[0]
简单来说,不管i具体取值是多少,错误代码只会访问数组的第0位或第1位元素,和你原本想判断arr[i]大小的逻辑完全偏离。
内容的提问来源于stack exchange,提问作者Steve H
相关产品推荐
相关产品推荐

