當前位置:首頁 » 編程語言 » 深入體驗c語言項目開發光碟

深入體驗c語言項目開發光碟

發布時間: 2024-10-16 19:47:48

c語言入門買什麼書好

1、基礎(C語言入門,初學,編程基礎)

《C語言程序設計:現代方法》(第2版)(C
Programming: A Modern Approach, 2nd Edition, K.N.King)

《深入理解計算機系統》(修訂版或第2版)(Computer Systems: A Programmer's Perspective,
Randal E. Bryant et al),閱讀建議

《C語言程序設計》(第2版)(The
C Programming Language, Brian W. Kernighan & Dennis M.
Ritchie)

《程序員修煉之道》(The
Pragmatic Programmer: From Journeyman to master, Andy
Hunt & Dave Thomas)

2、內核/驅動

《Linux內核設計與實現》(第3版)(Linux
Kernel Development, 3rd Edition, Robert Love)

《Linux設備驅動程序》(第3版)(Linux
Device Driver, 3rd Edition, Jonathan Corbet et al)

《深入Linux內核架構》(Professional
Linux Kernel Architecture, Wolfgang Mauerer)

3、應用

《UNIX網路編程》(Unix
Network Programming, W. Richard Stevens)

《UNIX環境高級編程》(Advanced
Programming in the UNIX Environment, W. Richard Stevens)

4、進階

《C陷阱與缺陷》(C Traps and Pitfalls, Andrew Koenig)

《C專家編程》(Expert C Programming, Peter
van der Linden)

《ARM嵌入式系統開發:軟體設計與優化》(ARM
System Developer's Guide: Designing and Optimizing System Software,
Andrew Sloss et al)

      ㈡ c語言編程怎樣入門

      相對於其他編程語言,C語言還是比較難的。初學者需要注意一下幾點:
      一是學習順序
      先從熟悉簡單的C語言語法開始入門,然後再循序漸進,學習C++語法,WIN32、MFC、QT、網路編程,資料庫、數據結構、演算法、COM、STL等。構建一個完整的C語言知識體系。這需要一個比較漫長的學習積累的過程。語法入門部分大概2-3個月,其他部分需要學習和工作中慢慢理解和消化了。
      二是學習方法
      人的知識80%是通過眼睛獲取的,但是學習編程有所不同,除了看書、看視頻之外,關鍵是要勤動手,勤動腦。通過做大量的練習、項目實戰不斷積累代碼量。只有代碼量足夠多了,項目做的多了,才能算是真正學會了。項目能否完成,就是衡量是否學會的唯一標准。後期就是代碼的質量和優化問題了,這個只能在項目工作中慢慢積累經驗了。
      最後強調一點,很多人學不會編程是因為掉坑裡了。就是教程或者書上的知識點之間跨越太大,作為一個初學者很難自己摸索出來,前面的知識點沒有掌握,接著學習後面的知識,肯定是學不會了。目前絕大多數編程書籍和教程或多或少都有這樣的弊端。自學能力比較強的人可以通過各種方法,參考各種網上的資料自己解決。但是大多數自學能力不是很強的人,只能依賴老師、同學、同事或者朋友幫忙指導,或者報名培訓機構,老師指導完成了。學習編程通常需要一些好的學習資料,包括紙質的書籍,視頻教程,課件,項目練習,代碼。零基礎入門的書籍推薦《明解C語言》、《C Primer Plus》,還有一本非常特別的匯編和C語言正向逆向結合的書編程達人內部教材《匯編、C語言基礎教程》也非常不錯,講解匯編和C語言的本質非常透徹,非常細致。視頻資料也是特別多了,各種視頻網站、論壇、自媒體都有,比如網易課堂、騰訊課堂、慕客網這些。還有一些論壇,比如CSDN、編程中國等。最重要的一點就是答疑服務,推薦愛達人的網站也很不錯,從零基礎入門到應用課程,配套的視頻、課件、代碼、項目、答疑服務都有,還可以兼職接單,學以致用。

      ㈢ 學習C語言 必看的書籍

      給C++初學者的50個忠告
      1.把C++當成一門新的語言學習(和C沒啥關系!真的。);
      2.看《Thinking In C++》,不要看《C++變成死相》;
      3.看《The C++ Programming Language》和《Inside The C++ Object Model》,不要因為他們很難而我們自己是初學者所以就不看;
      4.不要被VC、BCB、BC、MC、TC等詞彙所迷惑——他們都是集成開發環境,而我們要學的是一門語言;
      5.不要放過任何一個看上去很簡單的小編程問題——他們往往並不那麼簡單,或者可以引伸出很多知識點;
      6.會用Visual C++,並不說明你會C++;
      7.學class並不難,template、STL、generic programming也不過如此——難的是長期堅持實踐和不遺餘力的博覽群書;
      8.如果不是天才的話,想學編程就不要想玩游戲——你以為你做到了,其實你的C++水平並沒有和你通關的能力一起變高——其實可以時刻記住:學C++是為了編游戲的;
      9.看Visual C++的書,是學不了C++語言的;
      10.浮躁的人容易說:XX語言不行了,應該學YY;——是你自己不行了吧!?
      11.浮躁的人容易問:我到底該學什麼;——別問,學就對了;
      12.浮躁的人容易問:XX有錢途嗎;——建議你去搶銀行;
      13.浮躁的人容易說:我要中文版!我英文不行!——不行?學呀!
      14.浮躁的人容易問:XX和YY哪個好;——告訴你吧,都好——只要你學就行;
      15.浮躁的人分兩種:a)只觀望而不學的人;b)只學而不堅持的人;
      16.把時髦的技術掛在嘴邊,還不如把過時的技術記在心裡;
      17.C++不僅僅是支持面向對象的程序設計語言;
      18.學習編程最好的方法之一就是閱讀源代碼;
      19.在任何時刻都不要認為自己手中的書已經足夠了;
      20.請閱讀《The Standard C++ Bible》(中文版:標准C++寶典),掌握C++標准;
      21.看得懂的書,請仔細看;看不懂的書,請硬著頭皮看;
      22.別指望看第一遍書就能記住和掌握什麼——請看第二遍、第三遍;
      23.請看《Effective C++》和《More Effective C++》以及《Exceptional C++》;
      24.不要停留在集成開發環境的搖籃上,要學會控制集成開發環境,還要學會用命令行方式處理程序;
      25.和別人一起討論有意義的C++知識點,而不是爭吵XX行不行或者YY與ZZ哪個好;
      26.請看《程序設計實踐》,並嚴格的按照其要求去做;
      27.不要因為C和C++中有一些語法和關鍵字看上去相同,就認為它們的意義和作用完全一樣;
      28.C++絕不是所謂的C的「擴充」——如果C++一開始就起名叫Z語言,你一定不會把C和Z語言聯系得那麼緊密;
      29.請不要認為學過XX語言再改學C++會有什麼問題——你只不過又在學一門全新的語言而已;
      30.讀完了《Inside The C++ Object Model》以後再來認定自己是不是已經學會了C++;
      31.學習編程的秘訣是:編程,編程,再編程;
      32.請留意下列書籍:《C++面向對象高效編程(C++ Effective Object-Oriented Software Construction)》《面向對象軟體構造(Object-Oriented Software Construction)》《設計模式(Design Patterns)》《The Art of Computer Programming》;
      33.記住:面向對象技術不只是C++專有的;
      34.請把書上的程序例子親手輸入到電腦上實踐,即使配套光碟中有源代碼;
      35.把在書中看到的有意義的例子擴充;
      36.請重視C++中的異常處理技術,並將其切實的運用到自己的程序中;
      37.經常回顧自己以前寫過的程序,並嘗試重寫,把自己學到的新知識運用進去;
      38.不要漏掉書中任何一個練習題——請全部做完並記錄下解題思路;
      39.C++語言和C++的集成開發環境要同時學習和掌握;
      40.既然決定了學C++,就請堅持學下去,因為學習程序設計語言的目的是掌握程序設計技術,而程序設計技術是跨語言的;
      41.就讓C++語言的各種平台和開發環境去激烈的競爭吧,我們要以學習C++語言本身為主;
      42.當你寫C++程序寫到一半卻發現自己用的方法很拙劣時,請不要馬上停手;請盡快將餘下的部分粗略的完成以保證這個設計的完整性,然後分析自己的錯誤並重新設計和編寫(參見43);
      43.別心急,設計C++的class確實不容易;自己程序中的class和自己的class設計水平是在不斷的編程實踐中完善和發展的;
      44.決不要因為程序「很小」就不遵循某些你不熟練的規則——好習慣是培養出來的,而不是一次記住的;
      45.每學到一個C++難點的時候,嘗試著對別人講解這個知識點並讓他理解——你能講清楚才說明你真的理解了;
      46.記錄下在和別人交流時發現的自己忽視或不理解的知識點;
      47.請不斷的對自己寫的程序提出更高的要求,哪怕你的程序版本號會變成Version 100.XX;
      48.保存好你寫過的所有的程序——那是你最好的積累之一;
      49.請不要做浮躁的人;
      50.請熱愛C++!

      建議你買本書,書比網上的電子版教程好的多,如計算機屆超級權威教授 譚浩強 老先生寫的《C語言程序設計(第三版)》,全國發行了700萬冊,可以說是學C語言的人必看的書,我們大學就用這本書,很適合自學,通俗易懂

      建議你學習其它計算機知識時也看他的書,他出的書很多,涵蓋面廣,每一本都很經典

      這里有他的教程word版下載

      另外,機械工業出版社的 計算機叢書系列也相當經典,全是翻譯國外經典教材,國外計算機發展早,水平比國內高很多,看這些教材事半功倍,推薦(美)Al Kelley Ira Pohl的《C語言教程第4版》

      學習程序語言要持之以恆,不浮躁,祝你成功!

      ㈣ 介紹幾本c語言的代碼練習書

      C程序設計之四書五經
      榮耀/文
      引言 自從Dennis M.Ritchie於1973年設計並實現C語言以來,計算機程序設計領域已經發生了巨 大的變化。以C語言為根基的C++、java和C#等面向對象語言相繼誕生,並在各自領域大獲成 功。今天,C及其後裔幾乎統治了計算機程序設計世界。可以這么說,C語言的誕生是現代程序 語言革命的起點,它改變了程序設計語言發展的軌跡,是程序設計語言發展史中的一個里程碑。 然而,C並不僅僅是其他語言的起點和基礎,否則它早已成為程序設計語言發展過程中又 一個被遺棄者。和當初發明時一樣,C語言今天依然至關重要。它的表達力、效率、簡練、緊 湊、對機器的最終控制以及跨平台的高度移植性,使其在系統編程、嵌入式編程等領域一直占 據著統治地位,而C99標準的制訂則再一次使C語言煥發出新的活力。下文介紹C程序設計領域 中的幾本好書,其中一些堪稱經典。
      1. Brian W.Kernighan, Dennis M.Ritchie,《C程序設計語言》 清華影印版、習題集;機械譯文版(新版、老版):習題集 這是迄今為止在所有程序設計語言書籍中最廣受尊敬的一部經典,是任何一名C程序員的 必讀之作。因為出自C語言的設計者 Dennis M.Ritchie 和著名的計算機科學家 Brian W.Kernighan之手,它被昵稱為「K&R C」。是它首先引入了「Hello World!」程序,這個程序幾乎 成了後來任何一本入門性程序設計語言書籍中的第一個例子。 如同C語言本身簡潔緊湊而極具威力一樣,這本書輕薄短小而極富張力。通過簡潔的描述 和典型的示例,它全面、系統、准確地講述了C語言的各個特性以及C程序設計的基本方法,內 容涵蓋基本概念、類型和表達式、控制流、函數與程序結構、指針與數組、結構、輸入與輸出、 UNIX系統介面以及標准庫等內容。 簡潔清晰是這本書最大的特色。這本小書可以教給你許多比它厚幾倍的「大部頭」的知識。 我認為那些動輒洋洋灑灑拼湊出好幾百頁乃至上千頁的技術作者應該好好向K&R學一學。對於 中、高級程序員而言,如果希望迅速獲得C語言的嚴肅知識而又不願意多花費哪怕一丁點時間, 這本書就是首選。四書五經:CSDN《程序員》四書五經專欄歷年文章匯總 順便說一句,這本書的索引製作非常出色,極具實用價值,這可能首先要歸功於正文部分 的簡明扼要。此外,盡管它看上去很像一本教程,但其實更是一本寫給專業程序員的指南。如 果你不具備任何其他語言程序設計背景或基本的C語言知識,這本書也許並不適合用作你的C語 言啟蒙讀物。
      2. Perter Van Der LinDen,《C專家編程》 C專家編程 C語言是嚴肅的程序員語言,但這並不意味著C語言書籍必須板著面孔說教。在這本被C程 序員昵稱為「魚書」(封面上有一條「醜陋的」腔棘魚)的著作中,作為SUN公司編譯器和操作系統 核心開發組成員之一,Peter淋漓盡致地展示了其深厚的技術沉澱、豐富的項目經驗、高超的寫 作技巧以及招牌式的幽默。在這部作品中,作者以流暢的文字、詼諧的筆法將逸聞典故、智慧 和幽默自然地融入技術描述中,讀來宛若一本小說,極富趣味。 本書講述了C語言的歷史、語言特性、聲明、數組、指針、連接、運行時以及內存使用等 知識,揭示了C語言中許多隱晦之處,尤其深入解析了聲明、數組和指針、內存使用等方面的 細節。要想成為一名專家級C程序員,這些內容都是必須掌握的。和其他滿是抽象例子的C語言 書籍不同,這本書充滿了大量的來自真實世界的C程序設計實例,它們對C程序員具有很高的參 照價值。另外,每一章都以極富趣味的「輕松一下」收尾,而附錄A「程序員工作面試的秘密」則是 任何語言的程序員在應聘工作前增強自信的好材料。 我懷疑真正的C專家可能用不著看這本書 ——從內容到組織方式到行文風格都決定了這 是一本輕松愉快的「從菜鳥到高手」的進階讀本,所以,它理應擁有更廣泛的讀者群。初級程序 員往往更需要熱情的鼓勵,在閱讀這本書的過程中,你定會深深地被作者對編程的激情所感染。 世間並無完美。我認為這本書的缺陷在於,和大多數平庸的C語言書籍一樣,它畫蛇添足 地加入了一章關於C++的描述。在今天看來,這個描述既不全面也有失公允。不過,鑒於作者 是在1994年從一名C程序員的角度去觀察C++,這一點也就不足為奇了。
      3. Samuel P. Harbison, Guy L. Steele,《C語言參考手冊(第五版)》四書五經:CSDN《程序員》四書五經專欄歷年文章匯總 影印版(機械工業出版社)、中文版(機械工業出版社) 在C語言參考手冊類書籍里,Samuel P. Harbison 和Guy L. Steele合著的C: AReference Manual是非常出色的一本。這本手冊的第五版新增了對C99標準的介紹,以便滿足新時期C語 言學習的需要。全書共分為兩大部分,第一部分專注於C語言特性,第二部分則全面討論了C標 准庫。本書涵蓋C99、C89、傳統的C、所有版本的C運行庫以及編寫與C++兼容的C代碼等一 切知識。 這本手冊只是中等厚度,但它比「比它更厚」的其他參考手冊更清晰地描述了C語言的現在和 過去的方方面面。整本手冊技術細節描述精確,組織條理清楚,內容完備詳盡而又簡明扼要。 可以這么說,它在廣度、深度和精度方面都是出類拔萃的。對於中、高級C程序員而言,這本 手冊值得常備案頭,它幾乎肯定要比K&R的著作使用頻率更高。
      4. David Hanson,《C語言介面與實現:創建可重用軟體的技術》,機械工業出版社 C語言介面與實現:創建可重用軟體的技術 C語言能夠歷經三十多年而不衰,一個重要的原因在於它的適應能力。在這「復用」、「面向 對象」、「組件」、「異常處理」等先進機制漫天飛舞的年代,C語言仍然能夠憑借它小而優雅的語言 特性,在相當程度上滿足現代軟體體系架構提出的要求。只不過,想要達到這個程度,必須要 在C的應用功力上達到最高層次。在嵌入式、系統軟體以及對性能要求極高的系統開發中,開 發人員必須達到這樣的層次,熟練掌握C語言的高級特性,才能夠同時滿足效率和靈活性、復 用性的要求。可惜,雖然C語言技術圖書汗牛充棟,但是關注這個峰頂之域的作品卻是屈指可 數。David Hanson的C Interfaces and Implementations就是個中翹楚。 David Hanson是業內大名鼎鼎的自由編譯器lcc的合作者。在這個項目中,他負責提供高度四書五經:CSDN《程序員》四書五經專欄歷年文章匯總 可復用的基礎架構。在不斷的實踐中,他完全使用ANSI C形成了一整套可復用組件庫。這套組 件庫架構清晰,性能優異,而且提供了很多高級的特性,比如類Win32 SEH的異常處理機制、 可移植的線程庫、高性能的內存池、豐富的可復用數據結構組件。David Hanson把他在創作這 些組件的過程中所積累的心得以及對其源碼的精緻剖析原原本本地寫在了這本書里。這樣的著 作,當然堪稱C語言領域里的銘心絕品。難怪已故著名技術作家Richard Stevens對此書贊不絕 口,他說:「這本書中的技術,對於大部分C程序員來說,已經遺忘得太久了。」對於希望能在C 語言應用上達到最高層次的核心程序員而言,這本書是難得的必讀之作。
      其他 除了以上四本書以外,我還樂意推薦Andrew Koenig的著作《C陷阱和缺陷》(人民郵電出 版社)和Deitel父子合著的C How to Program兩本書。 C陷阱和缺陷 Andrew Koenig是世界上屈指可數的C++專家,他的這本書可能是最薄的一本C語言經典。 它簡明扼要地講述了C程序設計中的陷阱和缺陷,包括詞法陷阱、語法陷阱、語義陷阱、連接、 庫函數、預處理器以及可移植性缺陷等,最後一章還給出了關於如何減少程序錯誤的建議以及 前面各章問題的參考答案。盡管這個小冊子成書於C89標准制定之前,然而,即使到了C99早 已頒布的今天,書中提到的大多數陷阱和缺陷一如十五年前那樣使我們警醒。 C程序設計教程 Deitel父子合著的C How to Program一直是非常好的C語言入門教程,我手頭的中譯本名為 《C程序設計教程》(機械工業出版社出版,原書第二版)。除了對技術的正規描述(輔以許 多簡明扼要的例子)外,每一章後面都帶有小結、術語、常見的程序設計錯誤、良好的程序設四書五經:CSDN《程序員》四書五經專欄歷年文章匯總 計習慣、性能忠告、可移植性忠告、軟體工程評述、自我測驗練習及答案等。整書內容清晰, 組織良好,易於閱讀和理解。值得一提的是,有許多入門書讀完一遍即可扔掉,而這一本是個 例外。 結語 以上這幾本書很大程度上局限於描述C語言及標准庫本身,如果希望學習更專業的、領域 相關的C程序設計技術,你可以在選擇閱讀這幾本書的基礎上繼續查閱專門書籍。此外,在C語 言書籍領域,水平不相上下的作品有很多,這幾本只是根據我自身的閱讀體驗而做出的推薦。 我並不是一名C程序員,我的大多數時間都花在C的後裔語言尤其是C++身上了。然而,正 如你知道的那樣,C++並不全是類和模板,不全是面向對象和泛型編程,在較低的層面,C++ 的各個實現一如既往在很大程度上兼容C。C++和C的親密關系決定了每一本C語言經典都應該 是C++程序員的讀物。 這世界變化得真是太快。各色新事物層出不窮,讓人眼花繚亂、目不暇接。人們也很容易 被那些五光十色的花哨玩意兒所吸引,常常會忘記構築過去、現在和未來的堅實基礎。C語言 就是這樣的基礎之一。今天,世界上有許多我們看不見的重要軟體是用C語言(以及C++等)編 寫而成的,正是它們在默默地支撐著這個信息世界的運轉。

      ㈤ 請問學習編程 是先學 c語言還是學 有必要學演算法嗎

      我認為學習編程是一件好事,不要認為編程很難,其實它並不難,不過之前你得先了解你學習編程的目的是什麼?這個很重要,因為目的決定你的發展方向。目前對於編程有很多種編程語言以及相對應的開發軟體,根據你的情況選一種語言進行專業學習,不要盲亂學習。編程是一種融匯貫通的東西,學會基礎到後邊就越來越簡單了。而且可以向多種語言發展。因為畢竟世上沒有永遠不過時的東西嘛!下面說明一些常用的編程語言。
      c語言
      是一種可移植性和多系統平台的編程語言
      java
      是一種功能強大可移植性強的開發語言
      html
      是一種超文本標記語言
      java
      script
      是一種基於客戶端的腳本語言
      程序語言,顧名思義就是一種語言,是用於交流的,程序就是計算機的語言和人類語言的翻譯者,做一個程序員就是要把人類世界的問題用計算機的方法去解決和展現,可是因為種種原因,大多數人在如何學好語言,如何學好開發平台上疲於奔命,到頭來你只會敲寫代碼。如果想做一個合格的程序員,c++、java、sql、都是一定要學的,另外,不要去學你喜歡的,也不要去費勁腦子想該學什麼,看看it界,it市場需要什麼,你就學什麼。
      新手學編程要從根本出發
      從理論上來說,需要廣泛的閱讀,了解演算法的博大精深和計算機的基本理論。
      從實踐上來說,需要有廣泛的練習,練習的廣泛在於練習不同的內容。
      然後就是創新精神和數學思維能力,這些都是需要培養的。
      基礎要打好
      學編程要具備一定的基礎,總結之有以下幾方面:
      (1)數學基礎
      、從計算機發展和應用的歷史來看計算機的數學模型和體系結構等都是有數學家提出的,最早的計算機也是為數值計算而設計的。因此,要學好計算機就要有一定的數學基礎,出學者有高中水平就差不多了。
      (2)邏輯思維能力的培養
      、學程序設計要有一定的邏輯思維能力,「思維能力」的培養要長時間的實踐鍛煉。要想成為一名優秀的程序員,最重要的是掌握編程思想。要做到這一點必須在反復的實踐、觀察、分析、比較、總結中逐漸地積累。因此在學習編程的過程中,我們不必等到什麼都完全明白了才去動手實踐,只要明白了大概,就要敢於自己動手去體驗。誰都有第一次。有些問題只有通過實踐後才能明白,也只有實踐才能把老師和書上的知識變成自己的,高手都是這樣成材的。
      (3)選擇一種合適的入門語言、
      面對各種各樣的語言,應按什麼樣的順序學呢?程序設計工具不外乎如下幾類:
      1.本地開發應用軟體開發的工具有:visual
      basic
      、delphi
      、vc++
      (
      c++
      builder
      )
      等;資料庫開發工具有:visual
      foxpro
      、oracle
      developer
      、power
      builder
      等。
      2.跨平台開發開發工具如
      java
      等。
      3.網路開發對客戶端開發工具如:java
      script
      等;對伺服器開發工具如:php
      、asp
      、jsp
      、isapi
      、nsapi
      、cgi
      等。以上不同的環境下幾種開發工具中
      vb
      法簡單並容易理解,界面設計是可設化的,易學、易用。選
      vb
      作為入門的方向對出學者是較為適合的。
      (但現在已經過時)

      熱點內容
      linux是實時系統嗎 發布:2024-11-24 07:23:17 瀏覽:142
      java數據挖掘演算法 發布:2024-11-24 07:18:59 瀏覽:853
      我的世界伺服器怎麼重開指令 發布:2024-11-24 07:14:13 瀏覽:155
      python刪除dataframe 發布:2024-11-24 07:05:38 瀏覽:734
      安卓機藍牙怎麼傳東西 發布:2024-11-24 06:58:34 瀏覽:108
      android疊效果 發布:2024-11-24 06:58:33 瀏覽:991
      富士通電腦伺服器設置u盤啟動 發布:2024-11-24 06:56:21 瀏覽:716
      delphipython 發布:2024-11-24 06:51:24 瀏覽:866
      安卓手機如何添加文字 發布:2024-11-24 06:50:54 瀏覽:567
      小米存儲位置設置 發布:2024-11-24 06:45:10 瀏覽:207