我们知道大部分编程语言中的数组都是从0开始编号的,即array[0]
是数组的第一个元素。这个和我们平时生活中从1开始编号的习惯相比显得很反人类。那么究竟是什么样的原因让大部分编程语言数组都遵从了这个神奇的习惯呢?
本文最初是受stackoverflow上的一个问题的启发,通过搜集和阅读了一些资料在这里做个总结。
本文通过汇总一些网上搜集到的资料,总结出大部分编程语言中数组下标从0开始的原因。
--在计算资源缺乏的过去,0标号的写法可以节省编译时间
--现代语言中0标号可以更优雅的表示数组字串
--在支持指针的语言中,标号被视作是偏移量,因此从0开始更符合逻辑
传送门:cenalulu.github.io/linux/why-array-start-from-zero/