C/C++只做经典编程语言
?
1、從C到C++
計算機誕生初期,用機器語言或匯編語言編寫程序;
第一種高級語言FORTRAN誕生于1954年;
BASIC語言(1964)是由FORTRAN語言的簡化而成的是為初學(xué)者設(shè)計的小型高級語言;
C語言是1972年由美國貝爾實驗室的 D.M.Ritchie 研制成功的。它是為計算機專業(yè)人員設(shè)計的;
大多數(shù)系統(tǒng)軟件和許多應(yīng)用軟件都是用C語言編寫的。隨著軟件規(guī)模的增大,用C語言編寫程序漸漸吃力了,于是便創(chuàng)造出了C++語言。
2、C++的特點
C++是由 AT&T Bell實驗室 于20世紀(jì)80年代初在C語言的基礎(chǔ)上成功開發(fā)出來的。C++保留了C語言原有的所有優(yōu)點,并增加了面向?qū)ο蟮臋C制。
C++是由C語言發(fā)展而來的,與C兼容。用C語言寫的程序基本上可以不加修改地用于C++。從C++的名字可以看出它是C的超集。C++既可用于面向過程的程序設(shè)計,又可用于面向?qū)ο蟮某绦蛟O(shè)計,是一種功能強大的混合型程序設(shè)計語言。
備注:C++不是純面向?qū)ο笳Z言。
3、C++是對C語言的“增強”
(1) 在原來面向過程機制的基礎(chǔ)上,對C語言的功能做了很多擴充。
(2) 增加了面向?qū)ο蟮臋C制。
面向?qū)ο蟪绦蛟O(shè)計,是針對開發(fā)較大規(guī)模的程序而提出來的,目的是提高軟件開發(fā)的效率。不要把面向?qū)ο蠛兔嫦蜻^程對立起來,面向?qū)ο蠛兔嫦蜻^程不是矛盾的,而是各有用途互為補充的。
所以,通俗來講,大家在學(xué)習(xí)的過程中不要把C語言和C++做為兩門獨立或者對立的語言來學(xué)習(xí),本身他們就可以看成是一門語言,任何一款支持C++的編譯工具都支持C語言。C++就是C語言的超集,包括了所有C語言的特性,所以你把C++學(xué)會了,C語言自然也就會了。如果你之前學(xué)過C語言,那么再學(xué)習(xí)下C++的面向?qū)ο笏枷?#xff0c;那么兩者你也就都會了。
給大家舉個例子:
學(xué)習(xí)編程的人針對譚浩強這個名字應(yīng)該幾乎都聽過。譚浩強老師的C語言/C++語言的編程書籍可以說是國內(nèi)很多大學(xué)的標(biāo)桿教材了。我讀大學(xué)時候的C語言教材就是譚浩強老師的。
他有一本《C語言程序設(shè)計》專門講解C語言的,還有一本《C++程序設(shè)計》專門講解C++的,書挺厚的,包括了C語言的部分。還有一本是《C++面向?qū)ο蟪绦蛟O(shè)計》是專門講解C++的,所以可以這么說:《C語言程序設(shè)計》+《C++面向?qū)ο蟪绦蛟O(shè)計》=《C++程序設(shè)計》,這也充分體現(xiàn)了C語言和C++的關(guān)系。
?
4、用途:C語言和C++都能做什么呢?
C語言:操作系統(tǒng)底層、系統(tǒng)驅(qū)動、單片機、嵌入式方面 等等;
C++:網(wǎng)絡(luò)游戲開發(fā)、音視頻技術(shù)、Socket網(wǎng)絡(luò)通信,另外,蘋果/谷歌/微軟 等大型軟硬件公司的系統(tǒng)或者軟件上面都支持C/C++語言的集成開發(fā)。
你常用的軟件大多數(shù)都是C++寫的,例如:Office軟件:MS Office,WPS Office,OpenOffice/LibreOffice,你所用的Windows也用了大量的C++,你說你在用C#和SQL,那我告訴你你用的 VS IDE 核心部分是C++寫的,你用的C#,C# 的.Net執(zhí)行框架也是C++寫的,你用的Sql數(shù)據(jù)庫,是Sql Server吧?很不幸,Sql Server也是cpp寫的、你上網(wǎng)頁在用瀏覽器嗎?很不幸,瀏覽器內(nèi)核都是C++寫的,界面大多數(shù)瀏覽器界面也是C++寫的,你聊天用的 QQ、YY、Skype 等也是C++寫的。這些都是你絕對有在用的,至于其他,還有很多,殺毒軟件、PhotoShop、Maya,N多行業(yè)軟件,幾乎所有的端游 等等,都是C++寫的。你問我C++能做什么實際的東西,我告訴你什么也做不了,你信嗎?
C++ 的幾個常見的發(fā)展方向:客戶端,游戲,服務(wù)端,嵌入式,移動端(移動只要是跨平臺的移動端用C++寫通用部分,GUI可以用平臺特性,也可以用C++的跨平臺框架)
針對界面UI方面C++的選擇也是很多的,其實C++還是擅長“內(nèi)功”的方面。如果你想帶個GUI界面的話,也有很多類似Qt之類的框架和界面庫可以使用,網(wǎng)上有很多,而且很多都跨平臺,還開源,不管是 Windows,還是Mac,還是Linux,還是移動端平臺,通吃的。本身C/C++就是跨平臺的。
另外,說點大家感興趣的,什么遠(yuǎn)程控制軟件,什么木馬,什么外掛等等,可以說95%以上都是用C/C++來寫的。
難道這么多的用途還不值得大家來好好學(xué)學(xué)C/C++嗎?
另外,聞道有先后、術(shù)業(yè)有專攻,C++雖然功能很強大,幾乎什么都能做,但有的地方也是不適合,不是不能做而是不適合。比如網(wǎng)頁開發(fā),C++也能做,但是還是建議使用Java-Web或者PHP之類的語言來做,畢竟他們就是為了Web開發(fā)而生的。
其實做為一個開發(fā)者,有一個學(xué)習(xí)的氛圍跟一個交流圈子特別重要這里我要推薦c++交流群:“648778840”,不管你是小白還是大牛歡迎入住,大家一起交流成長。小編會在群中不定期分享干貨源碼,包括我精心整理的一份c++零基礎(chǔ)教程。歡迎各位感興趣的的小伙伴。
如果大家對C/C++感興趣的話,可以加一下我們的學(xué)習(xí)交流Q群:637 ?935 ?295,免費領(lǐng)取一套學(xué)習(xí)資料和視頻課程喲~
學(xué)習(xí)思路:
?
?
總結(jié)
以上是生活随笔為你收集整理的C/C++只做经典编程语言的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 划重点!通俗解释协方差与相关系数
- 下一篇: 如何让奇异值分解(SVD)变得不“奇异”