C語言和C++之間的關(guān)系
C++是在C語言的基礎(chǔ)上進(jìn)行的擴(kuò)展,C++包含了C語言的全部內(nèi)容。下面是小編為大家?guī)淼腃語言和C++之間的關(guān)系的知識(shí),歡迎閱讀。
C語言和C++之間的關(guān)系
C++ 讀作”C加加“,是”C Plus Plus“的簡稱。
顧名思義,C++是在C的基礎(chǔ)上增加新特性,玩出了新花樣,所以叫”C Plus Plus“,就像 iPhone 7 和 iPhone 6、Win10 和 Win7 的關(guān)系。
C語言是1972年由美國貝爾實(shí)驗(yàn)室研制成功的,在當(dāng)時(shí)算是高級(jí)語言,它的很多新特性都讓匯編程序員羨慕不已,就像今天的Go語言,剛出生就受到追捧。C語言也是”時(shí)髦“的語言,后來的很多軟件都用C語言開發(fā),包括 Windows、Linux 等。
但是隨著計(jì)算機(jī)性能的飛速提高,硬件配置與幾十年前已有天壤之別,軟件規(guī)模也不斷增大,很多軟件的體積都超過 1G,例如 PhotoShop、Visual Studio 等,用C語言開發(fā)這些軟件就顯得非常吃力了,這時(shí)候C++就應(yīng)運(yùn)而生了。
C++ 主要在C語言的基礎(chǔ)上增加了面向?qū)ο蠛头盒偷臋C(jī)制,提高了開發(fā)效率,以適用于大中型軟件的編寫。
C++和C的血緣關(guān)系
早期并沒有”C++“這個(gè)名字,而是叫做”帶類的C“。
”帶類的C“是作為C語言的一個(gè)擴(kuò)展和補(bǔ)充出現(xiàn)的,目的是提高開發(fā)效率,如果你有Java Web開發(fā)經(jīng)驗(yàn),那么你可以將它們的關(guān)系與 Java 和 JSP 的關(guān)系類比。
這個(gè)時(shí)期的C++非常粗糙,僅支持簡單的面向?qū)ο缶幊蹋矝]有自己的.編譯器,而是通過一個(gè)預(yù)處理程序(名字叫 cfront),先將C++代碼”翻譯“為C語言代碼,再通過C語言編譯器合成最終的程序。
隨著C++的流行,它的語法也越來越強(qiáng)大,已經(jīng)能夠很完善的支持面向?qū)ο缶幊毯头盒途幊獭?/p>
但是一直也沒有誕生出新的C++編譯器,而是對原來C編譯器不斷擴(kuò)展,讓它支持C++的新特性,所以我們通常稱為C/C++編譯器,因?yàn)樗瑫r(shí)支持C和C++,例如 Windows 下的微軟編譯器(cl.exe),Linux 下的 GCC 編譯器。
也就是說,你寫的C、C++代碼都會(huì)通過一個(gè)編譯器來編譯,很難說C++是一門獨(dú)立的語言,還是對C的擴(kuò)展。
C++是在C語言的基礎(chǔ)上進(jìn)行的擴(kuò)展,C++包含了C語言的全部內(nèi)容。
【C語言和C++之間的關(guān)系】相關(guān)文章:
C語言和C++到底有什么關(guān)系10-04
C++、C語言和JAVA開發(fā)的區(qū)別10-05
淺談c語言和c++和VB的區(qū)別11-24
C++ 中引用和指針的關(guān)系09-30
C/C++內(nèi)存管理10-05
C++ this指針詳解10-01
C++的類型轉(zhuǎn)換介紹10-01
Dev C++安裝教程10-06