国产亚洲精品AA片在线观看,丰满熟妇HD,亚洲成色www成人网站妖精,丁香五月天婷婷五月天男人天堂

新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 牛人業(yè)話(huà) > 學(xué)習(xí)C語(yǔ)言基本思路與參考書(shū)籍【強(qiáng)烈推薦】

學(xué)習(xí)C語(yǔ)言基本思路與參考書(shū)籍【強(qiáng)烈推薦】

作者: 時(shí)間:2015-07-14 來(lái)源:網(wǎng)絡(luò) 收藏

  計(jì)算機(jī)行業(yè)發(fā)展非???,大學(xué)里的教育基本都跟不上實(shí)際的社會(huì)需求。如果你所在的學(xué)校還在指定大家使用譚浩強(qiáng)的教材,或使用來(lái)教大家上機(jī)實(shí)驗(yàn),那你不妨看看本文,這里有一些建議可以幫助你不會(huì)脫離社會(huì)太遠(yuǎn)。

本文引用地址:http://www.ljygm.com/article/277225.htm

  考慮到這是一個(gè)過(guò)來(lái)人感覺(jué)很基礎(chǔ),但是對(duì)于初學(xué)者又覺(jué)得困難重重的問(wèn)題,我想如果這篇文章要想寫(xiě)得不讓你覺(jué)得專(zhuān)業(yè)名詞扎堆,內(nèi)容高深莫測(cè),讀完還是不知所云,那最好的辦法也許是,我們通過(guò)溝通的方式把整個(gè)「應(yīng)該怎么學(xué)」的問(wèn)題由小及大的展開(kāi),慢慢來(lái)談。

  在開(kāi)始之前,我們先來(lái)做一個(gè)小測(cè)試。

  一、小測(cè)試,你準(zhǔn)備好學(xué)習(xí)了嗎?

  1. 你是否聽(tīng)說(shuō)過(guò)二進(jìn)制數(shù),他們是如何進(jìn)行運(yùn)算的?(基本的數(shù)的進(jìn)制知識(shí))

  2. 你能說(shuō)出一個(gè)最小的計(jì)算機(jī)系統(tǒng)由哪些部分構(gòu)成嗎?(基本的計(jì)算機(jī)結(jié)構(gòu)知識(shí))

  3. 計(jì)算機(jī)是如何存儲(chǔ)圖像的? (數(shù)字化原理)

  上面這三個(gè)問(wèn)題,能回答的同學(xué)舉手。如果你舉手了,那么我們進(jìn)入下階段的討論,否則,我將告訴你,你現(xiàn)在最重要的事情,是趕緊找一本《計(jì)算機(jī)科學(xué)導(dǎo)論》把預(yù)備知識(shí)補(bǔ)充好。

  因?yàn)?mdash;—

  說(shuō)到底是一門(mén)以?xún)?nèi)存為中心的編程語(yǔ)言,你能不能學(xué)懂它,其實(shí)很大程度上不是取決于你智商高低,而是你是否擁有扎實(shí)的計(jì)算機(jī)結(jié)構(gòu)、存儲(chǔ)、運(yùn)算原理方面的知識(shí)!!

  在這里,我想強(qiáng)調(diào),任何新知識(shí)的學(xué)習(xí)都是有一定的前提條件的。C語(yǔ)言學(xué)習(xí)的前提條件就是,對(duì)計(jì)算機(jī)系統(tǒng)要有一個(gè)整體的,科學(xué)的基礎(chǔ)認(rèn)識(shí)。脫離了這個(gè)基礎(chǔ)認(rèn)識(shí),一切都很困難。

  所以,有些同學(xué)學(xué)不會(huì)C語(yǔ)言,不是因?yàn)樗麄冎巧滩恍?,而是因?yàn)樗麄儧](méi)有準(zhǔn)備好。

  我花時(shí)間寫(xiě)這篇文章來(lái)給大家講C語(yǔ)言的學(xué)習(xí),當(dāng)然是希望大家真正的學(xué)會(huì)、學(xué)懂C語(yǔ)言,并能夠真正感覺(jué)到它的用處,所以很抱歉我不會(huì)像培訓(xùn)機(jī)構(gòu)那樣,告訴你“零基礎(chǔ)”就能夠開(kāi)始學(xué)。但如果你真的按照我說(shuō)的去做,那么至少?gòu)默F(xiàn)在起,你確實(shí)是開(kāi)始有點(diǎn)“學(xué)院派”的認(rèn)真了。

  在這篇文章的最后,我推薦了一本我曾經(jīng)讀過(guò)的《計(jì)算機(jī)科學(xué)導(dǎo)論》。這本書(shū)可以說(shuō)是我的啟蒙書(shū),我讀過(guò),真心覺(jué)得好,所以推薦給需要的同學(xué)。

  好了,接下來(lái)我們進(jìn)入C語(yǔ)言的學(xué)習(xí)過(guò)程。

  二、學(xué)C語(yǔ)言到底學(xué)些什么—— 「語(yǔ)法」和「函數(shù)庫(kù)」

  C語(yǔ)言學(xué)習(xí)的關(guān)鍵,是要先搞明白,學(xué)C語(yǔ)言到底是在學(xué)些什么?

  我這么一問(wèn),有的同學(xué)就要翻開(kāi)課本,指著目錄說(shuō),我知道我知道,有變量,數(shù)據(jù)類(lèi)型,循環(huán)語(yǔ)句,函數(shù),哦哦哦,還有指針等等!

  很遺憾,如果你以為學(xué)習(xí)C語(yǔ)言就是學(xué)習(xí)這些東西,那你得趕緊糾正一下看法,否則接下來(lái)的學(xué)習(xí)會(huì)困難重重。因?yàn)槲以?jīng)就是這么掉到坑里的,這種狹隘的觀(guān)點(diǎn)讓我浪費(fèi)了大量的時(shí)間去學(xué)習(xí)瑣碎的細(xì)節(jié),又讓我遲遲不能接觸到更重要的知識(shí),結(jié)果是眼高手低——知道許多別人不知道的無(wú)用知識(shí),但是又寫(xiě)不出什么真正像樣的程序來(lái)。

  所謂「語(yǔ)法」,就是入門(mén)教材里最著重講解的內(nèi)容。也就是那些所謂的變量、數(shù)據(jù)類(lèi)型、分支判斷、循環(huán)、函數(shù)、指針等等。

  這些內(nèi)容比較枯燥,但是好消息是這些內(nèi)容并不難,都是一些格式化的東西。只要你多練習(xí),就會(huì)自動(dòng)的刻在你的腦子里,成為一種下意識(shí)的習(xí)慣。

  但是 「語(yǔ)法」本身其實(shí)沒(méi)什么用。因?yàn)樗皇且环N格式規(guī)范,你學(xué)得再好,也不能引導(dǎo)你寫(xiě)出厲害的程序。因?yàn)樵谲浖O(shè)計(jì)中,實(shí)際上最核心的部分還是在于其 「函數(shù)庫(kù)」部分。

  什么是 「函數(shù)庫(kù)」?

  簡(jiǎn)單來(lái)說(shuō),函數(shù)庫(kù)就是別人編寫(xiě)好的C函數(shù),直接提供給你用,你只要調(diào)用里面的函數(shù),就能實(shí)現(xiàn)一定的功能。例如 printf() 函數(shù),你肯定知道,只要調(diào)用這個(gè)函數(shù),你就能夠在那個(gè)黑糊糊的窗口里顯示一段文字。你并不明白 printf() 的內(nèi)部工作原理,但是你知道你只要按照說(shuō)明去調(diào)用,就能夠?qū)崿F(xiàn)對(duì)應(yīng)的功能。

  這就是函數(shù)庫(kù)——別人寫(xiě)好的,打包送到你面前,你可以自由調(diào)用來(lái)做各種各樣的事情的函數(shù)集合。

  我來(lái)說(shuō)幾個(gè)來(lái)自函數(shù)庫(kù)的函數(shù),例如 CreateWindowEx() 函數(shù)可以用來(lái)創(chuàng)建一個(gè)窗體(這個(gè)函數(shù)由微軟提供),例如 GaussianBlur() 函數(shù)可以用來(lái)對(duì)一個(gè)圖像進(jìn)行高斯模糊處理(這個(gè)函數(shù)由 OpenCV 提供),再比如 evhttp_new() 函數(shù)可以創(chuàng)建一個(gè) HTTP 服務(wù)程序(這個(gè)函數(shù)由 libevent 提供)……

  其他還有什么庫(kù)函數(shù)?太多了。從控制網(wǎng)絡(luò)通信,到截取視頻畫(huà)面并分析其中的人臉位置,到加解密本地文件,甚至包括微信收發(fā)消息,抓取淘寶商品信息……庫(kù)函數(shù)的數(shù)量和有用程度遠(yuǎn)遠(yuǎn)超乎大家的想象。

  誒?你從來(lái)沒(méi)聽(tīng)說(shuō)過(guò)還有這些東西?課本里也沒(méi)提到?

  那是因?yàn)槟憧吹氖侨腴T(mén)教材,著重講解語(yǔ)法,順帶提到了少量的 C 語(yǔ)言自帶的庫(kù)函數(shù)而已。事實(shí)上 C 語(yǔ)言包含的庫(kù)函數(shù)本身就有不少,但是更多更強(qiáng)大的還是許多第三方庫(kù)函數(shù),例如我上面提到的這些。

  重點(diǎn)是在于,我想告訴你,庫(kù)函數(shù)才是你學(xué)習(xí)C語(yǔ)言并將其應(yīng)用于實(shí)際的關(guān)鍵!!

  學(xué)會(huì)調(diào)用別人的庫(kù)函數(shù),甚至寫(xiě)出自己的庫(kù)函數(shù),都是極其重要的。因?yàn)橐粋€(gè)函數(shù),本質(zhì)上就是一個(gè)功能單位。你擁有的基礎(chǔ)設(shè)施越多,你的發(fā)揮空間越大。道理就是這么簡(jiǎn)單。這就是我需要向大家強(qiáng)調(diào)的第二個(gè)觀(guān)點(diǎn),要想寫(xiě)出實(shí)用的C程序,一大關(guān)鍵就是研究并學(xué)會(huì)使用各種庫(kù)函數(shù)。

  你看見(jiàn)隔壁王二寫(xiě)了個(gè)三維程序能讓一個(gè)彩色的立方體在空中旋轉(zhuǎn)?快找 OpenGL 庫(kù)函數(shù)來(lái)用。什么?劉大寶寫(xiě)了個(gè)網(wǎng)絡(luò)軟件能在局域網(wǎng)里聊天?快找 Socket 庫(kù)來(lái)用。

  看見(jiàn)了嗎?庫(kù)函數(shù)有多重要?

  但是,函數(shù)庫(kù)的學(xué)習(xí)并不是孤立的。許多庫(kù)函數(shù)背后需要一定的領(lǐng)域知識(shí)支撐。同樣如我第一個(gè)觀(guān)點(diǎn)所述,需要預(yù)備知識(shí)。學(xué)懂一個(gè)函數(shù)庫(kù),代表的不僅僅是明白如何調(diào)用那么簡(jiǎn)單,而更反映了我們對(duì)一個(gè)特定領(lǐng)域——網(wǎng)絡(luò)、數(shù)字圖像、密碼學(xué)、操作系統(tǒng)等的認(rèn)識(shí)。

  三、基本的學(xué)習(xí)過(guò)程與一般規(guī)律

  如我前面所述,C語(yǔ)言學(xué)習(xí)主要是以語(yǔ)法入門(mén),然后到函數(shù)庫(kù)。再具體一些來(lái)說(shuō),包括以下階段:

  1. 學(xué)習(xí)基礎(chǔ)語(yǔ)法

  2. 學(xué)習(xí)簡(jiǎn)單的少數(shù)幾個(gè)C語(yǔ)言自帶的函數(shù)

  3. 學(xué)習(xí)一些程序設(shè)計(jì)的基礎(chǔ)知識(shí)(數(shù)據(jù)結(jié)構(gòu),算法)

  4. 學(xué)習(xí)更多更強(qiáng)大的C語(yǔ)言自帶的函數(shù)

  5. 學(xué)習(xí)一些特定應(yīng)用領(lǐng)域的基本理論知識(shí)(操作系統(tǒng),數(shù)據(jù)庫(kù),網(wǎng)絡(luò),圖像……)

  6. 應(yīng)用上一階段學(xué)習(xí)的到知識(shí)進(jìn)一步學(xué)習(xí)其他人提供的函數(shù)庫(kù)(網(wǎng)絡(luò)處理、操作系統(tǒng)管理、圖像、密碼學(xué)等等)

  對(duì)于本科階段的同學(xué)來(lái)說(shuō),著重學(xué)好1-4,有選擇的學(xué)習(xí)一下5-6,做一些小作品出來(lái),就已經(jīng)非常非常不錯(cuò)了。這就是一般的學(xué)習(xí)規(guī)律。說(shuō)得很簡(jiǎn)短,但是要做到真的很不容易。

  四、參考書(shū)籍

  首先第一本,也是我認(rèn)為最重要的書(shū),是這本《計(jì)算機(jī)科學(xué)導(dǎo)論》??梢哉f(shuō),這本書(shū)是對(duì)我人生影響最大的兩本書(shū)之一。這本書(shū)通俗易懂,知識(shí)面廣,但又具有一定的深度。真是因?yàn)樽x了這本書(shū),才讓我建立了對(duì)計(jì)算機(jī)科學(xué)合理的基本認(rèn)識(shí)。在不涉及太多的數(shù)學(xué)原理的情況下,這本書(shū)清晰的揭示了包括計(jì)算機(jī)的基本構(gòu)成,CPU運(yùn)算的原理,內(nèi)存、硬盤(pán)、光盤(pán)是如何存儲(chǔ)數(shù)據(jù)的,編程的基本原理(機(jī)器語(yǔ)言、匯編語(yǔ)言,結(jié)構(gòu)化編程語(yǔ)言,面向?qū)ο缶幊陶Z(yǔ)言),以及網(wǎng)絡(luò)、數(shù)據(jù)壓縮等。

  說(shuō)白了,就是一本科普書(shū)。但是是一本偉大的科普書(shū)。入門(mén)者的福音書(shū)。

  

說(shuō)明: http://pic1.zhimg.com/e12a7dfd9919f8411f43eeb4152f8610_b.jpg

 

  然后,第二本,就是關(guān)于C語(yǔ)言語(yǔ)法的書(shū)籍了,說(shuō)實(shí)話(huà)這部份我已經(jīng)沒(méi)有印象看的什么書(shū)了。因?yàn)槲疫@個(gè)人有個(gè)毛病,就是喜歡東翻翻,西翻翻,哪里不懂就到處找書(shū)。可見(jiàn)這個(gè)部分其實(shí)沒(méi)有大家想象的那么固定,你只要找到一本自己看得懂的書(shū),就是好書(shū)!不必太過(guò)于拘泥于書(shū)與書(shū)之間的優(yōu)劣比較。

  最經(jīng)典的C語(yǔ)言入門(mén)書(shū)籍許多人肯定要說(shuō)是 K&R 的那本。但是其實(shí)這本書(shū)對(duì)大多數(shù)初學(xué)者來(lái)說(shuō)還是略難,如果有興趣也可以讀一讀。但我更建議你了解一些C語(yǔ)言之后再轉(zhuǎn)過(guò)來(lái)看看會(huì)更好。

  柴田望洋的《明解C語(yǔ)言》最近是一本廣受歡迎的親切的C語(yǔ)言入門(mén)書(shū)。昨天我專(zhuān)門(mén)到書(shū)店翻了一下,這本書(shū)確實(shí)很不錯(cuò),親切,謙虛,易懂。但我想也未必適合所有人。如果你是希望學(xué)習(xí)曲線(xiàn)平緩一些的,可以考慮看看。

  

說(shuō)明: http://pic2.zhimg.com/a86f52cb9d043e1b38389c8e3510a971_b.jpg
啊,差點(diǎn)忘了,還有一本咱們國(guó)內(nèi)的趙巖先生寫(xiě)的《C語(yǔ)言點(diǎn)滴》也有不錯(cuò)的反響,也許大家也可以找來(lái)看看。 

  

說(shuō)明: http://pic2.zhimg.com/71415eb8211777be63311ebe5a23f269_b.jpg
        基本上,上面這些書(shū)就能幫助你比較輕松的入門(mén)了。其他書(shū)籍推薦,我會(huì)陸續(xù)也寫(xiě)出來(lái)。今天實(shí)在寫(xiě)不了這么多了。

  但是,再補(bǔ)充一本,如果對(duì)于那些已經(jīng)學(xué)得差不多的同學(xué),必須得看看下面這本,這是我的至愛(ài)之一啊!^_^ 那就是吊炸天的《C Standard Library》,china-pub鏈接:C標(biāo)準(zhǔn)庫(kù)(C標(biāo)準(zhǔn)庫(kù)“圣經(jīng)”)

  好好看看這本書(shū),它是真正的頂級(jí)教材,因?yàn)?mdash;—里面包含了標(biāo)準(zhǔn)庫(kù)實(shí)現(xiàn)的完整源碼,以及作者在實(shí)現(xiàn)時(shí)的思路講解。是一本值得收藏的超級(jí)力作。讓我們一睹頂級(jí)程序員的思維杰作。(吐嘈:這本書(shū)的翻譯還是有一些值得修正的地方,所以能收英文版的同學(xué)就直接收英文版了)

  

 

  這幾本書(shū)其實(shí)并未涵蓋C語(yǔ)言學(xué)習(xí)的所有重要方面。稍后我會(huì)再放上一些來(lái)。今天打字打到手疼,就不繼續(xù)了。

  五、晉級(jí)——通向更高境界之路

  學(xué)無(wú)止境。更專(zhuān)業(yè)的學(xué)習(xí)至此其實(shí)才剛剛開(kāi)始。

c語(yǔ)言相關(guān)文章:c語(yǔ)言教程




關(guān)鍵詞: C語(yǔ)言 VC6.0

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉