我該不該學習C語言

這幾天把c語言過了一遍,基本上算是入門了,常用語法、函數的使用。c語言是比較古老的語言了,很多系統的底層、工業控制軟件都是使用C語言編寫,過一遍之後覺得c語言屹立不倒是有原因。c程序員有一句話:使用c語言時間長了,感覺自己能控制整個世界。

01 c語言和其他語言的區別和聯繫

c比較古老,很多現代編程語言設計時基於c的語法。C是面向過程的語言,Java、c#、Python、c++等是面向對象的語言,封裝的比較好,同樣執行速度也不如c快。c沒有複雜的封裝,所以使用起來很多東西需要自己編寫實現,入門容易精通難。c很多操作直接面向內存操作,還需要手動釋放內存,控制性更強,但也需要更多的經驗才能保證程序的穩定健壯,像現代語言都不需要考慮內存釋放。

02 c語言好學不?

好學,如果你學過Java、c#語言就會發現語法都差不多,像c語言中的結構體就和c#的結構很像。有很多人認爲指針比較難學,其實不然,能搞懂Java、c#中的值類型和引用類型就能搞懂c語言的指針。c中的函數都是比較基礎的函數,不像面嚮對象語言那樣龐大繁多。掌握了常用的函數後,其他的可以查函數手冊,用法都差不多,soso easy。

03 能幹啥?

編寫嵌入式程序(電子電路控制)、桌面程序、遊戲、寫個服務、寫個dll庫給別人調、寫個操作系統(誰寫出來請務必聯繫我)、寫個別的語言。

04 那我該不該學?

這個由你自己決定!我個人認爲不該學,現在很多公司不提倡重複造輪子,要快速開發,明天上線,用c寫程序實在不合時宜。我個人認爲該學,下圖便是對這個急功近利時代的嘲諷,只會複製粘貼的屬於體力勞作,詳情參考之前的這篇文章 程序員都知道,如何不被淘汰

圖片來自網絡

圖片來自網絡

爲啥有些公司樂意招 985、211 畢業的,培訓出來的就不能創造價值了嗎?並非鄙視培訓出來的同學,但 985、211 的同學確實好使,他們受到過更加基礎系統的訓練,操作系統、網絡協議、算法、數據結構這些思維性的纔是核心競爭力,所以學習c造造輪子也並非無用功。

大家思考一個問題,開源社區有很多優秀的開源項目,我們國人的開源項目能佔到多少?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章