C語言學習心得

2021-04-23 22:43:42 字數 1455 閱讀 4276

第一層:

初學c語言,基本上是隨便拿一本c語言入門,從helloworld開始了。學完後,能記住一些最簡單的語法,勤奮者,照書畫貓敲幾個例程體驗一把。

但大部分工科生應付完考試,也就止於此了,等大四找工作時,c語言基礎語法早就丟到了爪哇國了,這也是為何招聘時我們發現很多人一問三不知的原因了。

第二層:

學習完c語言後,很少一部分人會對程式設計產生了濃厚的興趣,最直接的體現就是嘗試用c語言寫一些好玩的程式。

這類人的比例還是比較小的,我以前招聘,最喜歡問的乙個問題是"描述乙個憑興趣寫的c語言程式",可惜能答上來的寥寥。受打擊多了,讓我從充滿希望到了徹底絕望了,以後直接雪藏該問題,僅問一些基礎知識了。

實際上這一層反而很關鍵,很多的資料結構、演算法知識都是在這一層學習的,而且如果不跨入該層境界,第一層也會歸零。記得在大學時,花了很長時間研究八皇后、青蛙跳等趣題,計算機基礎素養也在該過程中潛移默化慢慢提高了。

第三層:

在c語言使用過程中,基本上採用碰乙個問題解決乙個問題的辦法,但時間長了,都會有一種衝動重學c語言語法的,是所謂差缺補漏。此時就可以看比較高階的c語言書籍了,不過一般推薦還是《k&r》,不僅是大師的書,最主要的原因還是很薄啊。

在該階段,一般需要專門記憶基本庫函式。想當初俺上大學時,電腦還是奢侈品,拿著記事本在圖書館抄啊抄,相比較,現在的孩子太幸福了。

第四層:

在接觸嵌入式c語言程式設計後,慢慢的要和硬體接觸了。首先接觸的就是c語言執行環境構建、初始化、堆和堆疊等概念了。經過該過程的鍛鍊,對c語言的理解應該比較完善了,而且硬體也開始入門了,算是登堂入室了。

第五層:

隨著對硬體的進一步了解,很多時候需要去理解c語言對應的組合語言,優化技巧及取捨策略,編譯原理的知識開始登堂入室了,不過對很多人來說,這是比較難的一關,建議多在**生成和優化技巧方面多下先功夫,對解決一些深層次問題很有幫助。

第六層:

對硬體的進一步加深理解主要側重於體系結構了,理解了這一點,才能真真明白乙個程式是如何在硬體上執行的,才能明白為何c語言叫做中級語言,才能明白int的預設定義為何叫最自然的整數表示,才能明白c語言為何有很多歧義定義,才能明白為何c語言可以在各種硬體上自然的舒展拳腳,才能……。

第七層:

程式寫多了,已經開始不侷限於知識的延展了,開始深耕了,開始慢慢體會啥叫好的程式,開始慢慢約束自己以巧妙避開有歧義的語句,開始考慮寫出的程式是否可以讓硬體更爽快的執行,開始……。

第八層:

達到該層境界的人,應該都是企業的骨幹了,不能在搞個人英雄注意了,需要帶領團隊一起衝鋒陷陣了,此時開始體悟到cleancode的概念,明白程式的可讀性甚至比效率更重要。

第九層:

如何叫「熟悉」,爸爸媽媽肯定最熟悉自己的孩子,因為陪伴著其一起成長的。走到該境界的人,是否有衝動對c語言刨根問底啊,明白c語言各版本的發展史嗎,能否理解那些為了相容而採取的妥協策略嗎。

第十層:

大師的境界,早已跳出語言範疇,揮揮手不帶走半點雲彩了,算了,非俺等凡夫俗子可以涉足,大家還是洗洗睡吧。

c語言學習心得

摘要 林林總總的計算機語言,林林總總的計算機技術,林林總總的計算機書籍讓我們初入計算機的菜鳥一次就嚇的沒有勇氣。迷茫和徘徊讓我們喪失了時間和信心。沒有訣竅嗎?有的,看你怎麼把握了,接下來我就以c語言為例子,講一下有關學習的方法和技巧,同時也分享一下我學c的感想。林林總總的計算機語言,林林總總的計算機...

C語言學習心得

在科技高度發展的今天,計算機在人們生活 學習和工作中的作用越來越突出。我們都知道c語言是一種計算機語言,而作為計算機專業的我們學習它,就更有助於我們更好的了解計算機,與計算機進行交流,因此,c語言的學習對我們尤其重要。說實話這個學期剛開始學c語言的時候,很感覺迷茫,對裡面的好多東西很陌生,在操作運用...

微控制器C語言學習心得

今天寫這一篇文章並不是因為已經想好了一篇文章才寫下來,而是我要將這一篇文章作為乙個長期的筆記來寫,我會一直更新。在進行微控制器開發時,經常都會出現一些很不起眼的問題,這些問題其實都是很基礎的c語言知識點,是一些小細節。但是正是因為很基礎,又都是小細節,所以我們往往容易忽視它們。結果有時候我們會花很長...