當前位置:編程學習大全網 - 編程語言 - 請指教C語言項目的學習路線?

請指教C語言項目的學習路線?

壹、UNIX下C語言的學習路線。

歐加農

“公欲善其事,必先利其器”。編程是壹項實踐性很強的工作。在以後的學習或工作中,我們會經常用到以下工具。下面列出了學習C語言編程經常用到的軟件和工具。

(1)操作系統

在UNIX或Linux系統下學習C比較方便,所以在開始學習之旅之前,請選擇壹個UNIX或Linux操作系統。

目前可供個人免費使用的UNIX或Linux系統有FreeBSD、RedHat Linux、SUSE Linux等。,而且安裝包裏提供了很多實用的工具,比如gcc,make等。

如果妳壹直用的是Windows,沒有多余的機器安裝UNIX,可以用VMware通過VMware安裝壹個虛擬系統。

(2)編譯工具

目前,大多數Unix或Lnux系統都提供了cc或GCC編譯器。最簡單的CC命令格式如下:

cc -o hello hello.c

在unix shell環境中鍵入上述代碼,會將hello.c程序編譯成可執行文件hello。

Make工具,如GNU make,System V make,Berkeley make,都是用來組織應用程序編譯過程的基本工具,但每個make工具都不壹樣。

大多數UNIX和Linux程序都是通過運行make編譯的。make工具會讀取壹個包含指令的文件(這個文件的名字通常是makefile或者makefile,但下面會稱之為“Makefile”)並執行各種操作來編譯程序。

(3)調試工具

最簡單的調試工具:在程序中添加打印語句

在妳對程序的運行機制有了壹定的了解之後,就可以使用壹些工具來幫助調試了。當然,妳得學會如何使用這些工具,比如dbx和gdb。

還有壹些內存工具可以幫助發現內存泄漏或者緩沖區溢出等壹些問題,比如:memwatch、yamd等。

(4)其他工具

1.vi或vim

Unix下的文本編輯器。編輯文本文件主要靠壹堆命令。學習Unix編程時最好熟悉並熟練使用vi編輯器。

當然,在實際工作中,可能需要集成的編碼環境或者強大的圖形編輯工具。

2 .網絡術語

最著名的網絡終端軟件之壹,可以用來方便地連接到主機系統。

3.安全外殼

壹個支持ssh協議的客戶端工具,大多數情況下用來連接linux系統。

書籍和文章

書籍是人類進步的階梯。學習壹門新知識,當然要選幾本適合自己的書。以下是我自己用來學習C語言的壹些書籍:

1.《C底漆加》

推薦理由:適合作為入門書籍和基本函數查詢的參考。本書最新版本是第五版,基於ANSI C99詳細介紹了C語言。

2.《C程序設計語言》

推薦理由:C語言之父的作品的權威性毋庸置疑。雖然這本書出版時間比較老,似乎沒有更新過,但它仍然是壹本經典的書,並且這本書的英文電子版可以在網上下載。

3.“C專家編程”

推薦理由:這本書可以幫助有經驗的C程序員成為C編程專家。最重要的是,這本書寓教於樂,充分享受編程的樂趣。

4.缺陷和陷阱

推薦理由:書中透露的知識可以幫助繞過C語言本身的陷阱和缺陷,減少代碼中很多常見的bug。

5.Unix環境下的高級編程

推薦理由:既然是UNIX環境下的C編程,就不得不說壹下UNIX編程書籍。強烈推薦Stevens老師的《unix環境下的高級編程》,也是案頭必備(如果對網絡編程感興趣,可以學習Stevens老師的兩卷UNIX網絡編程,如果覺得不夠,可以看三卷詳細的TCP/IP)。

6.計算機編程的藝術

推薦理由:算法高手要努力。計劃出版五卷書,到目前為止好像已經出版了三卷。對算法感興趣,可以研究壹下。

加工品

1.學習C語法

語法學習對於壹個有編程背景的人來說是非常容易的;就算我之前沒有學過其他編程語言,我相信我也能在兩周內輕松搞定。

需要註意的是,不要太糾結於語言的細節,比如運算符的優先級和組合。

2.學習C標準庫

ANSI C庫將函數分成不同的組,每個組都有壹個與之相關的頭文件。與C++和Java等其他語言相比,C語言的標準庫非常短小精悍,但首先要重點關註以下幾個庫:

Ctype.h:字符處理

數學. h:數學庫

Stdio.h:標準輸入輸出庫

Stdlib.h:通用工具庫

字符串處理

時間:時間和日期

如果想了解完整的ANSI C庫,可以購買相關書籍,裏面壹般會詳細介紹各個功能的使用方法和壹些註意事項;

3.攻克c難度。

c語言語句:

C語言的語句真的很嚇人,很晦澀,語句的形式和用的差不多。比如,恐怕就連很多熟悉C多年的程序員也壹眼看不出來:

char * const *(* next)();

那麽有沒有好的記憶方法或者規律可以找出來呢?好像沒有,如果有,也沒那麽折磨人。不過,妳可以看看《C專家編程》第三章,或許會有所收獲。

只能多學多練。所謂熟能生巧。希望這個問題不會給妳的心裏留下陰影。

數組和指針:

標準中沒有詳細規定數組和指針的關系,很多C入門書也沒有對這個問題給出詳細的解釋,所以會造成很多誤解。

對於這個問題,可以參考C缺陷和陷阱的4.5節和C專家編程的4,9,10章。我相信這裏的內容很透徹,以後不會被這個問題迷惑。

指針和內存:

如果妳以後寫壹個大規模的程序,妳可能會發現這個問題可能是最大的煩惱,可能會消耗最多的調試時間。

c版問題:

這個問題妳要特別註意,最好不要在妳的程序中混用不同版本C的特性,否則會帶來非常混亂的問題。如果妳必須使用它,妳最好知道妳在做什麽。

4.UNIX環境下的編程

學會以上,就可以在unix環境下編程了。不過妳可能需要了解壹點操作系統理論,這樣學起來會比較容易。

Unix環境下的編程應該以IO和進程為中心。《Unix環境高級編程》對Unix環境編程有非常詳細和深入的論述,書中有大量實用的示例程序,但可能需要幾個月的時間才能咀嚼好。

對以上內容有了紮實的掌握,並不代表C語言的學習分支已經完成,相反,才剛剛開始。以後我們需要用所學的知識去解決很多不同的實際問題,在不斷練習的過程中,進壹步加深對c的理解,有了以上的基礎,妳會發現實踐中需要的其他知識也會很快掌握。

二、Windows程序員的學習路線

1.當然,妳應該熟悉C語言。可以選擇譚浩強的C編程語言(當然最好是讀C編程語言)。尤其是指針、結構等東西壹定要搞清楚(至少要壹個月才能學好)。為什麽要以C開頭?< 1 >勤奮好學

2.在1的基礎上,壹定要認真學習數據結構。對於C++程序員來說,壹個好的數據結構可以讓壹個程序員輕松完成編程。糟糕的數據結構會讓程序員精疲力盡。推薦書籍:嚴為民的《數據結構》(C語言版)或者北大中文C++版的《數據結構》書上說每門學科在編程中都會用到。這將有利於未來的C++編程(3

3.學好2之後,就可以學習C++程序設計了。這本書介紹了C++以及如何在Windows下使用C++編寫程序(要學好至少需要3個月)。

4.在3的基礎上,可以看壹本叫《Windows 95編程》的書(它的最新版本是《編程Windows》),這是Windows編程領域的不朽之作(三個月)。學完2和3,妳已經成為壹個可以設計Windows程序的程序員了。如果妳想更好地設計Windows編程,妳必須使用框架。沒有結構的原因:框架結構可以加快我們的編程速度。雖然框架的使用讓我們的編程效率降低,但是隨著當今計算機計算能力的提高,妳不會感覺到這壹點點性能損失,反而會因為妳使用的框架結構而加快妳的編程。只有使用框架結構,才能成為真正的VC++程序員。

5.在4的基礎上,可以看壹些簡單的MFC編程書籍,比如《Visual C++入門教程》,使妳能夠用通用控件編寫壹些MFC程序(1個月)。

6.在5的基礎上,妳可以快速開發壹個軟件,但是不了解MFC框架的運行機制就不好了。了解MFC的運行機制,可以讓以後的MFC編程更好的工作。推薦侯傑的《MFC in a Simple Way》真的不適合初學者。等妳有了壹些開發經驗之後,這本書真的很適合我。如果妳熟悉Windows下的SDK編程,打算用MFC進行軟件開發,這本書會是最好的(2個月)。

7.在6的基礎上,可以看潘愛民翻譯的《VC++技術內幕》,看原著(3個月)。

8.在以上基礎上,為了更好的使用工具VC++,我推薦閱讀VC++6.0合集(3個月),從開發工具的角度寫的很好。

9.為了更好的工作,可以參考上百個VC++編程的例子。

10.之後可以看看《Windows核心編程》這本書,裏面對Windows的編程解釋的很好。對妳寫系統程序很有好處。推薦看原版。

11.只知道它的外形並不是真正的了解之後,妳應該仔細閱讀Windows的內核源代碼。相信WRK很好找,可以配合Windows操作系統深度分析,Windows內核原理與實現,Windows內核場景分析。

12.其他的東西《COM原理》(潘愛民)OpenGL D3D VC的數據庫編程,圖形、圖像、音視頻處理和網絡要了解和使用。

13.要成為壹名優秀的程序員,妳必須對驅動有所了解,所以有必要寫壹些類似文件驅動的東西。

14.學會以上步驟後,妳就成為了壹名優秀的Windows程序員(前提是妳把每壹步都學好了)。

15.錯過壹些重要的東西也是很重要的,比如編譯原理,構圖原理,設計模式。只有學好這些,才能理解語言為什麽要這樣組織,才能高效。

  • 上一篇:制作網頁分為幾個步驟。
  • 下一篇:個人自我鑒定
  • copyright 2024編程學習大全網