當前位置:學者齋 >

計算機 >C語言 >

C語言和C++到底有什麼關係

C語言和C++到底有什麼關係

一般而言,C,C++,java被視為同一系的語言,它們長期佔據著程式使用榜的前三名。那麼C語言和C++到底有什麼關係呢?來和小編一起看看吧。

C語言和C++到底有什麼關係

C++ 讀作”C加加“,是”C Plus Plus“的簡稱。

顧名思義,C++是在C的基礎上增加新特性,玩出了新花樣,所以叫”C Plus Plus“,就像 iPhone 7 和 iPhone 6、Win10 和 Win7 的關係。

C語言是1972年由美國貝爾實驗室研製成功的,在當時算是高階語言,它的很多新特性都讓彙編程式設計師羨慕不已,就像今天的Go語言,剛出生就受到追捧。C語言也是”時髦“的語言,後來的很多軟體都用C語言開發,包括 Windows、Linux 等。

但是隨著計算機效能的飛速提高,硬體配置與幾十年前已有天壤之別,軟體規模也不斷增大,很多軟體的體積都超過 1G,例如 PhotoShop、Visual Studio 等,用C語言開發這些軟體就顯得非常吃力了,這時候C++就應運而生了。

C++ 主要在C語言的基礎上增加了面向物件和泛型的機制,提高了開發效率,以適用於大中型軟體的編寫。

  C++和C的血緣關係

早期並沒有”C++“這個名字,而是叫做”帶類的C“。

”帶類的C“是作為C語言的一個擴充套件和補充出現的,目的是提高開發效率,如果你有Java Web開發經驗,那麼你可以將它們的`關係與 Java 和 JSP 的關係類比。

這個時期的C++非常粗糙,僅支援簡單的面向物件程式設計,也沒有自己的編譯器,而是通過一個預處理程式(名字叫 cfront),先將C++程式碼”翻譯“為C語言程式碼,再通過C語言編譯器合成最終的程式。

隨著C++的流行,它的語法也越來越強大,已經能夠很完善的支援面向物件程式設計和泛型程式設計。

但是一直也沒有誕生出新的C++編譯器,而是對原來C編譯器不斷擴充套件,讓它支援C++的新特性,所以我們通常稱為C/C++編譯器,因為它同時支援C和C++,例如 Windows 下的微軟編譯器(),Linux 下的 GCC 編譯器。

也就是說,你寫的C、C++程式碼都會通過一個編譯器來編譯,很難說C++是一門獨立的語言,還是對C的擴充套件。

C++是在C語言的基礎上進行的擴充套件,C++包含了C語言的全部內容。

  關於C++的學習

從“學院派”的角度來說,C++支援面向過程程式設計、面向物件程式設計和泛型程式設計,而C語言僅支援面向過程程式設計。

就面向過程程式設計而言,C++和C幾乎是一樣的,所以學習了C語言,也就學習了C++的一半,不需要從頭再來。

沒有任何程式設計基礎的讀者,建議先從C語言學起,不要貪多嚼不爛。等你熟悉了C語言,能編寫出上百行的程式碼,就對程式設計有些概念了,這個時候再去了解C++究竟在C語言基礎上增加了什麼,你就站在了一定的高度。

有程式設計基礎的讀者,相信你自己能做出正確的判斷。

標籤: 語言
  • 文章版權屬於文章作者所有,轉載請註明 https://xuezhezhai.com/zh-tw/jsj/cyuyan/jvwj9q.html