看板 Programming 關於我們 聯絡資訊
我覺得首要的還是以這程式語言的使用環境要求 例如在一些低階(要求速度的組合語言、一般的單晶片開發)環境 陣列從0起算是很正常的,因為不這樣的話會白白增加程式碼長度 另外,GOTO自然是用得更兇了,反正編譯之後都是一堆JMP 只要加上適當的旗標,GOTO沒那麼難搞 但是到了大型(數千數萬行)的專案(程式設計師合作)開發的時候 程式碼最重要的是可讀性可流通性那些 GOTO不是不能用,但就僅限於特殊要求程式碼效率的小Function 至於陣列該怎麼起算? 好用,程式碼能夠乾淨簡潔才是最重要的 : : http://www.iis.sinica.edu.tw/~scm/ncs/2009/07/go-to-considered-harmful/ : : 上面這個連結雖然是討論GOTO : : 不過Dijkstra大師在裡面說 : : 『我以為到了現在,一個專業程式員該有高一點的自我要求了,陣列應該從0算起, : : 我以為到了現在,一個專業程式員該知道自然數從 0 開始的好處了』 : : 但是我在看Core Java的時候作者又說了 : : 『Java counts the code units in strings in a peculiar fashion: : : the first code unit in a string has position 0. : : This convention originated in C, : : where there was a technical reason for counting positions starting at 0. : : That reason has long gone away and only the nuisance remains. : : However, so many programmers are used to this convention that : : the Java designers decided to keep it.』 : : 如果可以拋開歷史因素之類相容問題的話 : : 那麼陣列索引到底是從0開始計算好,還是從1開始計算好呢? 在VB6中如果你宣告一個 Array(10) 指的是Array(0~10)都可以用,共有十一個空位,你可以從0算到9或是1算到10都可以 原因很單純的就是不差那一點記憶體空間(VB.Net我不確定) 在Fortran中如果宣告Array(10), 可用空間則是1~10 在C、JAVA的話,則都是0~9 -- 填充題: ______なのはいけないと思います! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.180.163
aecho:答案是 リリカル 嗎.... 114.43.194.2 08/20 06:20
horngsh:樓上是用BIG5的日文嗎?112.104.191.119 08/20 09:15
milonga332:瞭解了..多蝦 123.50.39.188 08/20 11:40
MOONRAKER:VB.NET也改成C-Style了。所以.NET下寫125.227.222.205 08/20 12:10
MOONRAKER:啥語言都是換個皮而已,頗無聊。125.227.222.205 08/20 12:11
loveme00835:這樣也就表示溝通上比較方便了說@@140.121.197.115 08/20 12:17
MOONRAKER:這倒是啦…其實我真正不爽的是MS同時把125.227.222.205 08/20 16:52
MOONRAKER:很多C的特色加入VB.NET中,例如+=, -=125.227.222.205 08/20 16:52
MOONRAKER:這些組合運算子,搞得兩邊沒啥差異性 :<125.227.222.205 08/20 17:00
aecho:是日文,用Nally的編輯貼上的 114.43.194.2 08/21 14:35
aecho:還不會用這台打日文,所以就複製貼上~~ 114.43.194.2 08/21 14:35