C語言與C++的區(qū)別總結(jié)_第1頁
C語言與C++的區(qū)別總結(jié)_第2頁
C語言與C++的區(qū)別總結(jié)_第3頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、.精選范本精選范本C 語言和 C+的區(qū)別首先,我們來看看 CC+的概念:1. C 語言是一種計(jì)算機(jī)程序設(shè)計(jì)語言,它既具有高級語言的特點(diǎn),又具有匯編語言的特點(diǎn)它由美國貝爾研究所的 D.M.Ritchie于 1972年推出 年后C 語言已先后被移植到大、中、小及微型機(jī)上,它可以作為工作系統(tǒng)設(shè)計(jì)語言, 編寫系統(tǒng)應(yīng)用程序也可以作為應(yīng)用程序設(shè)計(jì)語言編寫不依賴計(jì)算機(jī)硬件的應(yīng)用程序它的應(yīng)用范圍廣泛具備很強(qiáng)的數(shù)據(jù)處理能力不僅僅是在軟件開發(fā)上, 而且各類科研都需要用到 C 語言適于編寫系統(tǒng)軟件,三維,二維圖形和動具體應(yīng)用比如單片機(jī)以及嵌入式系統(tǒng)開發(fā)。2.C+CC plus plus“CPC+是一種靜態(tài)數(shù)據(jù)類型檢

2、查的、支持多重編程范式的通用程序設(shè)計(jì)語言計(jì)等多種程序設(shè)計(jì)風(fēng)格。隨著軟件規(guī)模的增大,用 C 語言編寫程序漸漸顯得有些吃力了。C+是由AT&T Bell(貝爾)實(shí)驗(yàn)室的Bjarne Stroustrup 博士及其同事于 20 世紀(jì)80 年代初在 C 語言的基礎(chǔ)上開發(fā)成功的 C+保留了 C 語言原有的所有優(yōu)點(diǎn), 增加了面向?qū)ο蟮臋C(jī)制。C+是由 C 發(fā)展而來的,與 C 兼容。用 C 語言寫的程序基本上可以不加修改地用于 C+。從 C+的名字可以看出它是 C 的超越和集中。C+既可用于面合型的程序設(shè)計(jì)語言。C+對C(1) 類型檢查更為嚴(yán)格。(2) 增加了面向?qū)ο蟮臋C(jī)制。增加了泛型編程的機(jī)制(Templa

3、te。增加了異常處理。增加了運(yùn)算符重載。增加了標(biāo)準(zhǔn)模板庫(STL。矛盾的,而是各有用途、互為補(bǔ)充的。學(xué)習(xí) C+,既要會利用 C+進(jìn)行面向過程的結(jié)構(gòu)化程序設(shè)計(jì),也要會利用C+進(jìn)行面向?qū)ο蟮某绦蛟O(shè)計(jì),更要會利用模板進(jìn)行泛型編程。C+的特點(diǎn)C+是在C 語言的基礎(chǔ)上開發(fā)的一種面向?qū)ο缶幊陶Z言,應(yīng)用廣泛。C+語言的主要特點(diǎn)表現(xiàn)在兩個方面:一是盡量兼容C,二是支持面向?qū)ο蟮姆椒?。它操持?C 的簡潔、高效的接近匯編語言等特點(diǎn),對C 的類型系統(tǒng)進(jìn)行了改革的擴(kuò)充,因此 C+比 C 更安全,C+的編譯系統(tǒng)能檢查出更多的類型錯誤。另外,由于C 語言的廣泛使用,因而極大的促進(jìn)了C+的普及和推廣。C+語言最有意義的方

4、面是支持面向?qū)ο蟮奶卣鳌km然與 C 的兼容使得C+具有雙重特點(diǎn), 但他在概念上完全與C 不同,更具面向?qū)ο蟮奶卣?。C 語言的特點(diǎn)簡潔緊湊、靈活方便C 語言一共只有 32 個關(guān)鍵字,9 種控制語句,程序書寫自由,主要用小寫字母表示。它把高級語言的基本結(jié)構(gòu)和語句與低級語言的實(shí)用性結(jié)合起來。 C 語言可以象匯編語言一樣對位、字節(jié)和地址進(jìn)行操作, 而這三者是計(jì)算機(jī)最基本的工作單元。運(yùn)算符豐富C 的運(yùn)算符包含的范圍很廣泛,共有種 34C 語言把括號、賦值、強(qiáng)制類型轉(zhuǎn)換等都作為運(yùn)算符處理。從而使 C算符可以實(shí)現(xiàn)在其它高級語言中難以實(shí)現(xiàn)的運(yùn)算。數(shù)據(jù)結(jié)構(gòu)豐富CC 語言具有強(qiáng)大的圖形功能, 支持多種顯示器和驅(qū)動

5、器。且計(jì)算功能、邏輯判斷功能強(qiáng)大。C結(jié)構(gòu)式語言的顯著特點(diǎn)是代碼及數(shù)據(jù)的分隔化,即程序的各個部分除了必要的信息交流外彼C序完全結(jié)構(gòu)化。C 語法限制不太嚴(yán)格、程序設(shè)計(jì)自由度大一般的高級語言語法檢查比較嚴(yán),能夠檢查出幾乎所有的語法錯誤。而 C 語言允許程序編寫者有較大的自由度。C 和 C+的區(qū)別:C 是一個C 和 C+的區(qū)別:C 是一個結(jié)構(gòu)化語言它的重點(diǎn)在于算法和數(shù)據(jù)結(jié)構(gòu)C 程序的設(shè)計(jì)首要考慮的是如何通過一個過程,對輸入(或環(huán)境條件)進(jìn)行運(yùn)算處理得到輸出(或?qū)崿F(xiàn)過程(事務(wù))控制。不一樣。之所以說 C+比 C 更先進(jìn),是因?yàn)椤?設(shè)計(jì)這個概念已經(jīng)被融入到C+應(yīng)的問題域,這樣就可以通過獲取對象的狀態(tài)信息得

6、到輸出或?qū)崿F(xiàn)過程(事務(wù))控制。 所以 C 與 C+的最大區(qū)別在于它們的用于解決問題的思想方法不一樣。之所以說 C+比 C 更先進(jìn),是因?yàn)椤?設(shè)計(jì)這個概念已經(jīng)被融入到C+C+C 的不同:一、類,類對于初學(xué)者,它是一個累贅。類的封裝使得初學(xué)者對程序產(chǎn)生厭倦,感到不適和麻煩。一、類,類對于初學(xué)者,它是一個累贅。類的封裝使得初學(xué)者對程序產(chǎn)生厭倦,感到不適和麻煩。二、引用,引用是 C+中最好盡量不要用它,除非萬不得已。引用對于初學(xué)者就更容易產(chǎn)生混淆,不知道哪個是引用,哪個是變量。三、函數(shù)的重載,初學(xué)者學(xué)函數(shù)的重載好像沒什么壞處,但是,這會使初學(xué)三、函數(shù)的重載,初學(xué)者學(xué)函數(shù)的重載好像沒什么壞處,但是,這會

7、使初學(xué)者潛意識里對 C 語言的變量類型的重要性產(chǎn)生淡化,要記住 C 語言是對變量類型最敏感了的,變量的類型在 C 語言里的重要性是不言而喻的。者潛意識里對 C 語言的變量類型的重要性產(chǎn)生淡化,要記住 C 語言是對變量類型最敏感了的,變量的類型在 C 語言里的重要性是不言而喻的。四、流操作符,和上面同樣的道理,使得對變量類型的重要性產(chǎn)生淡化,有時會產(chǎn)生使初學(xué)者莫名其妙的結(jié)果。五、操作符重載,典型的高級應(yīng)用,初學(xué)者可能根本用不著,這個東東會讓他們覺得 C+很難,門檻高,看不懂。六、繼承,以及虛函數(shù),看起來深奧,實(shí)用價值很低。他們覺得 C+很難,門檻高,看不懂。六、繼承,以及虛函數(shù),看起來深奧,實(shí)用

8、價值很低。問:C+是面向?qū)ο蠡亩鳦 是面向過程化的?答:第二對,第一問錯,C+并非完全面向?qū)ο蠡嬲拿嫦驅(qū)ο蠡恼Z言恐怕只有 Java 才算得上。怕只有 Java 才算得上。問:學(xué)了 C 再學(xué) C+有障礙嗎?比如程序設(shè)計(jì)思想答:至少我還沒有看見誰有此癥狀。問:C+能實(shí)現(xiàn)C 所不能的功能嗎? 答:至少我還沒有發(fā)現(xiàn)問:學(xué)了 C 再學(xué) C+有障礙嗎?比如程序設(shè)計(jì)思想答:至少我還沒有看見誰有此癥狀。問:學(xué)了 C 再學(xué) C+又要重頭開始嗎?答:完全沒必要。問:C+比C 好在哪里?答:更加符合軟件工程學(xué)答:不,C+下可以實(shí)現(xiàn)C 語言的一切功能。C 一定還要學(xué) C+才能編程嗎?答:完全沒必要。問:C+

9、比C 好在哪里?答:更加符合軟件工程學(xué)C 再學(xué) C+是不是很容易?答:那要看你是不是真正的學(xué)完了 C 語言。C 與 C+的最大區(qū)別:在于它們的用于解決問題的思想方法不一樣。之所以說C 與 C+的最大區(qū)別:在于它們的用于解決問題的思想方法不一樣。之所以說C+比 C更先進(jìn),是因?yàn)椤?設(shè)計(jì)這個概念已經(jīng)被融入到C+之中就語言本身而言,在C 中更多的是算法的概念。那么是不是C 就不重要了,錯!C加上好的設(shè)計(jì)”也能寫出非常好的東西。對語言本身而言,C 是 C+的子集,那么是什么樣的一個子集?從上文可以看出, C 實(shí)現(xiàn)了 C+中過程化控制及其它相關(guān)功能,而在C+中的C(我稱它看出, C 實(shí)現(xiàn)了 C+中過程化

10、控制及其它相關(guān)功能,而在C+中的C(我稱它C+,相對于原來的 C 還有所加強(qiáng),引入了重載、內(nèi)聯(lián)函數(shù)、異常處理等新鮮事了,需要考慮的是諸如:對象粒度的選擇、對象接口的設(shè)計(jì)和繼承、組合與繼承的使用等等問題。等玩藝兒,C+更是拓展了面向?qū)ο笤O(shè)計(jì)的內(nèi)容,如類、繼承、虛函數(shù)、模板和包容器類等等。 再提高一點(diǎn),在C+中,數(shù)據(jù)封裝、類型這些東東已不是什么新鮮事了,需要考慮的是諸如:對象粒度的選擇、對象接口的設(shè)計(jì)和繼承、組合與繼承的使用等等問題。所以相對于 C,C+包含了更豐富的“設(shè)計(jì)”的概念,但 C 是 C+的一個自洽子集,也具有強(qiáng)大的功能,同樣值得學(xué)習(xí)幾點(diǎn)學(xué)習(xí)建議:1基本概念很重要。無論學(xué) C,還是學(xué) C

11、+,基本概念都是第一位的,也是比幾點(diǎn)學(xué)習(xí)建議:1基本概念很重要。無論學(xué) C,還是學(xué) C+,基本概念都是第一位的,也是比較困難的,但只有把握了基本概念才能把握整體脈絡(luò),才能居高臨下。2C 是 C+的子集,它的基本概念和設(shè)計(jì)方法相對比較容易理解,初學(xué)者可從它入手。3如果要學(xué)好 C+,建議初學(xué)者最好別在如 VC,BCB 平臺下寫程序它入手。3如果要學(xué)好 C+,建議初學(xué)者最好別在如 VC,BCB 平臺下寫程序,那種自dos,從頭做起,寫幾個大點(diǎn)的程序,數(shù)個回合,再到 VC,BCB輕松得很。在我看來,學(xué)好 C/C+是成為 VC,BCB 高手的必由之路。4不要妄想速成,4不要妄想速成,必須得一個 byte,一個 bit 的去摳,盡量搞清楚每一個問題。C 語言允許直接訪問物理地址,可以直接對硬件進(jìn)行操

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論