高等 C 語言 -- 陣列大小的問題
高等 C 語言簡介字串指標與陣列函數結構物件導向記憶體檔案錯誤處理巨集處理C 與組合語言資料結構動態字串動態陣列鏈結串列雜湊表開發環境MakeCygwinMinGWDevC++wxDevC++編譯器gcc 編譯器TinyCC 編譯器LCC 編譯器應用主題CGI 程式GNU 程式視窗程式影像處理練習題訊息相關網站參考文獻最新修改簡體版English |
在 C 語言當中,陣列大小是很難決定的問題,因為一般的 C 語言並沒有提供垃圾蒐集機制。 解決這個問題的方法有兩種,第一種是採用如前述的動態陣列,如此陣列大小會隨著您加入的元素多少而自動成長,因而能夠解決這個問題。 第二種方法是不要採用 malloc 的動態分配機制,而是改用靜態的陣列進行宣告,如此您就必須能夠明確的知道陣列所能容納的元素個數。舉例而言,假如您要用一個陣列儲存一年中每一天所花費的錢,那麼就可以用 int money[366]; 這樣的宣告,因為您早已知道最大的陣列大小為 366,因此可以很容易的決定。 如果不是這種很明確的情形,而是要用來儲存像符號表這樣的表格,那筆者建議您不要使用靜態陣列,改採前述的動態陣列來實作,您會發現這種作法比硬去宣告一個很大的陣列好多了。 當您還需要位陣列大小傷腦筋時,應該就是想錯方向了,請改用動態陣列。 |
page revision: 0, last edited: 07 Sep 2010 06:27
Post preview:
Close preview