當前位置:編程學習大全網 - 編程語言 - 為什麽很多人覺得C語言只要學會了指針基本上差不多掌握這門語言?

為什麽很多人覺得C語言只要學會了指針基本上差不多掌握這門語言?

從事嵌入式開發十幾年,只要使用的編程語言有三種,C/C++ Java三種,其中C語言使用的時間最長,這門編程語言的最大特別是語法細節簡介,但是靈活性非常強,從大的方面看要真正掌握壹種編程語言,需要真正的項目實戰,只是停留在理論層面上很難認清編程語言背後的本質,記得剛學習C語言階段,基本上壹個多月就把基礎語法學習完了,並且做了大量的實習題目,覺得這門編程語言就這麽回事了。

於是從學校的圖書館裏面借了壹本將近1000頁的linux內核講解書籍,開始先從戰略上藐視對手,在戰術上重視在開始幾十頁進展的還是比較順利,始終覺得掌握好了基礎的語法,後面的就是變通和靈活運用的問題了,還能變出什麽幺蛾子結果,看到後面簡直就是在閱讀天書了,才知道了自己認識的淺薄,只是掌握點語法皮毛就想著挑大梁這種想法在編程行業顯得非常的幼稚,編程行業除了理論之外實戰經驗顯得非常重要。

回到題目中的C語言的核心知識點指針,C語言關鍵語法點指針,數組,結構體,回調,遞歸,函數等等,剩下就是這些個概念在項目實戰中的應用了,指針對於初學者來講就是壹種雙刃劍,如果真的掌握理解了,能在編程中提升非常大的效率,如果沒有掌握對於很多初學者來講就是壹種折磨,很多人覺得學不好C語言版本的數據結構,其實很重要的壹個障礙就是指針,如果對於指針了解清楚,再去切入數據結構的學習就會顯得輕松許多,指針作為C語言裏面最重要的語法壹點不為過,但是認為掌握了指針C語言就會顯得非常膚淺。

任何壹種編程語言的背後都是大量的編程模式以及編程的套路,這些只有在真正的項目實戰中才能掌握,而且對於壹種編程語言越是做的時間長越是覺得自己的膚淺,更加不敢稱之為精通,倒是現在很多初生牛犢在簡歷上寫上精通幾種編程語言,越是幹的時間長越是忌諱提到精通兩個字眼,所以講只是掌握了指針就說掌握壹門編程語言的壹半顯得認識不足,真正掌握編程語言還是靠項目實戰,不是所謂幾個重點語法這麽簡單的事情。

學習壹種編程語言需要掌握幾個重點要素,首先掌握理論基礎,世要真正的明白,雖然編程語言是壹種實踐性的語言,但實踐的前提是掌握理論基礎,很多人不懂C語言的指針就是因為沒有徹底明白指針的含義,只想著快點追趕進度,結果欲速則不達,越是重要的概念越是要徹底掌握明白;第二點就是實戰,在掌握理論基礎上就是通過項目實戰獲取經驗,紙上談兵永遠也不做不了真正的項目,想盡壹切辦法去做項目實戰,沒有別的途徑,直面問題的本質,希望能幫到妳。

很高興能回答妳的問題

C語言作為編程老祖,很多軟件工具腳本都是用C語言或C++來編寫的。那麽C語言到底學成什麽樣才算學的比較好?

我上大學壹年級的時候,就開始接觸C語言了,C語言自認為學的還可以。像數據、變量、循環、判斷等都是手到擒來。但學到第8章,也就是學到了指針那壹塊,就感覺有壹點懵了,老師也說指針是比較費腦力的,死記硬背是不可取的,需要理解它的含義。

在學習指針之前,基本都沒了解面向對象是什麽意思。但學到了指針就懂得面向對象與面向過程的差異。(簡單來說,前者就是以對象為基礎,設定其屬性啊,行為等。後者就是以完成它的過程為主,比如說:計算兩個數相加。前者可以設計為小貓計算兩個數,也可以是小貓2......,而後者就是計算,而且可以具體到是哪兩個數相加。)面向對象對於現在的編程語言還是很重要的。

個人覺得,指針與面向對象密切相關,導致在C語言中指針就變得尤其重要,像我後面學習的Python、java就沒有指針壹說,但出現了很多類。相對C語言來說,多出了很多很多類。可能是指針被封裝起來了吧。

更多精彩,敬請期待!

指針遠遠不是C語言的全部,

只是在C語言學習道路上相對而言比較難理解的壹塊。

畢竟從壹個高級語言的角度去理解地址,比較抽象。

作為壹個高級語言,數據類型,流程控制,函數這些才是高級語言的重點。

說差不多掌握這門語言,應該就是指的指針的難度,和學習的耗時。

也對,也不對,學會指針只是入門了。位運算與文件學會才能寫應用。

只要學過嵌入式開發對指針必定是秒懂,無非就是內存尋址。脫離了硬件去學C只能學點皮毛。充其量也只能說會點語法而已。線程進程信號量系統調用各種通訊協議這些才是精華所在。

c語言是結構性(相對面向對象編程語言)高級編程語言。單純語言本身來講,語法結構大致類同。c語言的壹大特點是對內存操作的靈活性,如果理解了對內存操作和管理的知識點,基本就掌握了這門語言。而指針便是c語言對內存操作的金鑰匙。要想掌握c語言,也必須要精通指針相關知識點。

如果不算數據結構、操作系統和算法這些東西。純粹從語言角度來看,掌握指針技巧,確實可以認為基本掌握語言了。要想更加精進的話,可以考慮學習各個硬件平臺了。

比如SIMD在各個CPU平臺的實現等。做壹些針對性的硬件優化是可以考慮的。多媒體庫就做了大量的硬件針對性優化。這個內容也算是核心技術的壹部分了。核心技術的另壹部分可以認為是算法和操作系統知識的應用。

首先說明的是指針是C語言的壹個難點,但是不是全部。就好比不會指針,很多編程技巧無法掌握,同樣掌握指針也不見得妳能做什麽。很多編程技巧需要在實際項目中去體會和學習。等覺得自己像編譯器壹樣思考,自己寫的每句代碼,都很清楚編譯器背後是怎麽處理的時候再說自己熟練掌握C語言了。

最後總結來說,掌握指針只是C語言"真正"入門的壹個表現。

語言本身掌握不算難,重點是算法,數據結構,編程思想...

我壹般自己設計編譯器 c指針按我自己的想法來寫 怎麽的

  • 上一篇:消防機器人有較強的控制處理通信功能
  • 下一篇:年貨節現場活動策劃方案
  • copyright 2024編程學習大全網