發新話題

[分享] C 語言的優缺點

C 語言的優缺點

C 語言並非沒有缺點的,實際上,C 語言的缺點非常的多,多到可以用罄竹難書來形容。舉例而言,用 C 語言寫程式很容易有 bug,特別是在記憶體分配與回收這部份更是如此。C 語言沒有自動記憶体回收機制,沒有垃圾收集功能,因此常常導致忘記釋放記憶體,或者將同一個記憶體釋放數次,因而造成錯誤。C 語言的字串很原始,使用起來非常不方便。C 語言的標準函式庫甚至沒有基本的資料結構,像是陣列、串列、堆疊、字典等相關結構的函式庫。C 語言的條件式編譯讓程式看起來很冗長,使用標頭檔 *.h 讓你必需重複撰寫函數表頭,浪費許多時間。更糟的是,由於 C 語言的標準函式庫很小,因此在不同的平台上,每個廠商都實作出完全不同的函式庫,這導致 C 語言的程式難以跨越平台執行,您必須位每個平台打造一份程式,而不像 Java 那樣可以 Write Once,Run Anywhere。

但是,即便有了這麼多的缺點,C 語言仍然歷經四十年而不衰,這又是為甚麼呢?

每個 C 語言的缺點,幾乎都是伴隨著其優點而來的,C 語言的記憶體難以管理,是因為 C 語言具有強大的指標功能。字串函數很原始,是為了讓您可以使用字元陣列的方式處理字串,而不需要使用動態記憶體配置。無法跨越平台,是因為 C 語言適合用來打造底層的嵌入式系統,可以直接連結組合語言協同工作。從這個角度看來,C 語言的設計其實是相當精巧的,這也是 C 語言為何經歷四十年而不衰的原因。

TOP

發新話題

本站所有圖文均屬網友發表,僅代表作者的觀點與本站無關,如有侵權請通知版主會盡快刪除。