在程式語言的各種戰爭中,還有一個東西也是爭論不斷,那就是陣列到底要從零開始呢,還是從一開始。
我們在高中時學線性代數應該都有學過,我們都是從一開始的,為什麼反而寫程式,卻會是從零開始,想從一開始還要浪費一格空間感覺心裡空蕩蕩的。
其實在程式上會從零開始,可能是由於從陣列以前的實作方法是pointer,pointer會指向陣列第一個位置,然後用pointer+n代表第幾格,所以第一格會是pointer+0,所以我們從[1,n]變成[0,n-1]來碰我們的陣列。
不過其實現在也開始有一些程式語言比如說Julia跟Matlab,他們為了跟數學家方便溝通使用,所以他們的陣列就直接是從1開始了喔!