學C語言好,還是學C++好呢?這兩個專業在哪些領域用得最多?

每日一發小視頻


首先要明確一點,C和C++是不同的東西,很多回答都認為它們是一體的,是嚴重誤導初學者。它們遵循不同的標準體系,運用領域不同,編程思想不同,僅僅是部分語法相似而已。

一些回答說C++比C更高端,更有前途的,那更加是是胡說八道,誤人子弟了,這兩種語言應用領域不同,不存在誰更高端,誰更有前途的說法,要講高端,前途,開發效率,一些新興的語言更合適。

C語言適用於嵌入式,操作系統,硬件驅動,高性能網絡服務器(nginx,Redis等)等軟件的編寫,相對C++而言更加偏向底層,適用於變化不大,穩定性要求高的場合。C語言語法簡單,入門相對容易,學好C語言有助於對計算機體系的理解。C語言本身缺乏類似C++的STL的標準庫,每個項目,不同數據類型要單獨實現一套數據結構和算法,這方面不如C++靈活,高效。但一些人說C語言不適合開發大型軟件,開發效率不如C++,這些都是嚴重誤導新人的,C語言在積累了通用數據結構和算法或直接採用優秀的第三方庫之後,開發效率和C++差別不大。像操作系統,數據庫這種大型基礎軟件用C語言開發的不在少數,C語言怎麼就不適合大型軟件了?影響大型軟件開發主要是管理,而非語言,設計不合理的C++代碼的腐敗速度會比C語言慢麼?

C++適合遊戲,界面,數據庫的編寫,偏向應用層。C++是程序員兩級分化最嚴重的語言,也是從入門到放棄人數最多的語言。優秀的C++程序員可以寫出很漂亮的代碼,普通的很容易寫出狗屎,濫用語言特性,尤其那些認為C語言和C++差不多的人,C++標準更新得比C語言快很多,引入的新特性也很多,有C語言基礎對學C++唯一的好處就是會一些非常基礎的語法,其他高級語言特性,設計模式,標準庫,統統要從頭學起。C語言有師傅帶,三年成材,C++有師傅帶,五年未必成得了材。自學?兩種語言都必須自己有天賦和悟性才行,兩種語言都比較難。都是屬於學習難,做東西更難,精通難上加難的典型。

人生苦短,C++我是不推薦的(除非工作不得不用),C語言可以學習下,但別指望短時間內做出有用的東西,語言瞭解的語法之後,還要掌握編程環境,熟悉這種語言編程思想,大量閱讀優秀的源代碼。

建議瞭解下新興的語言,golang,rust,swift等,有餘力就多學幾門,挑選下適合自己語言和方向。


coord


c語言和c++這兩種語言雖說看著差不多,但實際上應用領域還是差別比較大的,也不能簡單的說哪個更好。

編程語言有很多種,目的就是要讓機器或者是設備“理解”我們的意圖,執行相應的動作。最底層的是機器語言,就是二進制編碼,機器只能讀懂二進制編碼。在上一層就是彙編語言,c語言等,屬於低級語言。再上一層就是c,c++,c#,java等,都屬於高級語言。低級語言是可以轉成二進制編碼的,而高級語言只能通過低級語言才能變成二進制編碼。高級語言編寫的都是應用程序,而低級語言編寫的是底層程序。

這樣對比後,我們瞭解到c語言既可以編應用程序,也可以編寫底層程序。而c++只能編寫應用程序。並且c語言編寫應用程序明顯不如c++方便,所以基本上沒有人用c語言編寫應用程序。

目前c語言主要應用於嵌入式開發,各種單片機的底層程序都是c語言編寫的,並且c語言的跨平臺非常好用,兼容性很好。學好c語言之後,主流單片機的編程都不成問題。並且verliog和c語言相似度很高,之後學習會變的很輕鬆,fpga開發會容易很多。

c++語言主要編寫應用程序,上位機軟件。和c語言的側重領域不同。

所以這兩種語言不能說哪個更好,只能說哪個更適合你。如果是做嵌入式底層開發,那就必須是c語言了。如果是做程序設計,可以選擇c++學習。如果說還沒有方向,那就先學習c語言。相對於c++,c語言更容易一些,並且目前有很多語言和c語言的相似度很高,之後學習其他語言也比較容易。

學習c語言推薦這本書


電子雜談


單純的問學C好還是學C++好,這個東西沒人能替你回答。語言是一門工具,不同的語言可能適用性不同。每一門語言都有各自的長處,所以沒有說哪個好或者哪個不好。主要取決於你想幹什麼,你要做什麼東西,還要取決於你的興趣愛好,然後再決定去學什麼語言。比如說我是學電子的,經常用到單片機那麼我就是學C語言,用C語言來控制。舉個簡單的例子,如果你要去美國交流學習那麼肯定是要去學英語,如果你要去法國交流學習,那麼肯定就要去學法語,那你能說學英語好還是學法語好呢?C語言和C++都是很主流的編程語言,你的發展方向取決於你需要學習的編程語言。當然如果有時間有興趣,兩門語言都可以去學習和了解的,如果是新手完全沒有編程基礎,個人建議可以先去了解一下C語言。


哈哈呵呵嘻嘻衣衣


我曾經是一名資深的程序員,在初創公司有著豐富的工作經驗,歡迎關注我,和我一起分享職場,科技,互聯網創業等方面的知識。

C++語言是基於C語言發展而來,C語言的語法C++基本通用,所以不要猶豫,先把C語言學好,這是必修課,C語言學精以後,C++自然就手到擒來了。

看看他們的排名,其實C和C++是不分家的。

至於學好C語言以後,你想留在C語言領域繼續深造還是繼續往C++領域去深造,這就要看你從事的行業了。

我來談談這兩個語言分別在哪個場景使用的較多:

一、C語言

C語言主要用在底層軟件,操作系統,服務器底層工具鏈的開發較多,適用於MCU的驅動,嵌入式系統的底層軟件,服務器底層工具測試等領域。

學號C語言可以從事的行業有很多,比如:智能硬件領域,小家電領域,人工智能領域,物聯網終端,機器人領域等等。這幾年由於智能硬件、物聯網、機器人領域的興起,C語言也是水漲船高。非常有發展前景。

二、C++語言

C++是一門面向對象的語言,要比C語言更高端,定位是要比C語言更高性能的領域。C++語言比較適用於音頻處理,視頻處理,遊戲引擎,計算機桌面軟件等大型場合。可以說C++適用的領域是相當廣泛的,各行各業都能找到它的身影。可是由於近些年JAVA,PYTHON等語言的興起,C++語言的使用已經沒有那麼大的市場了,JAVA,PYTHON等語言簡單易使用,受到大家的廣泛歡迎。

所以,你要選擇什麼語言進行精修,和你從事的行業有著莫大的關係。筆者只提供部分思路供你參考,具體選擇還要你自己去發現。


祝你前程似錦,希望我的回答對你有所幫助。請記得關注我哦,並在下方留言,我們一起探討。我可以給你更多的參考意見。


科技關注聚焦


C++是有C發展而來,由於C語言比較適合小規模程序運行,但是當問題比較複雜、程序的規模比較大的時候,C語言就會展現出它的侷限性,於是就有C++的產生可以處理大規模的程序。

第一個問題他們使用頻率,C更多是底層開發,核心驅動,嵌入式+單片機的開發等領域開發,而C++是由C語言發展得來,C語言能開發C++都可以,而且比C功能更多,我們常見C++開發系統軟件開發,大型遊戲開發等待。

第二個問題他們發展前景,本人覺得C++更有發展前景,當然這不是絕對得,畢竟C是基礎,C++是發展得來。


常青春科技


首先,c語言作為入門語言學習,就算你學習c++,前提還是要學c的,c++相當於是c的語言的升級版或者是補充版,c是一中面向過程的編程,而c++是面向對象的編程,想從事嵌入式或者系統軟件發麵的話,c和c++是首選,建議先學習c語音,等c語言掌握到一定程度後,就可以逐漸學習c++了,建議最終還是要學習c++,因為c++比c更加方便一些,c++對你理解面向對象的思想很有幫助。。


快樂陪伴永遠666


個人推薦學習C++.

其實這兩種語言有非常多的重合點,學習了其中一門,另外一個不用學也能用起來。而且這兩門語言通常情況下都被認為是可以互相替代的。C++裡面不使用面向對象那部分就和C差不多了。那為什麼推薦C++呢?因為個人認為面向對象編程是一個非常好的編程概念,學習了它之後,再涉及其他更高級一些的語言時就會非常容易上手。而且,是的,你可能會說,你只想精通一門語言,但是你工作中絕對會用到其他的語言或多或少。

因為個人工作中往往會使用多種編程語言,對這兩門語言的細緻區別不是很清楚,故不做回答,望見諒。


UselessProgrammer


這兩個都可以考慮學習的,這兩個都很有前途的,發展前景很大的,很適合考慮學習的,可以考慮瞭解一下的,現在這一塊很適合考慮學習的,可以瞭解一下的,C語言是一門通用計算機編程語言,廣泛應用於底層開發。C++是C語言的繼承,它既可以進行C語言的過程化程序設計,又可以進行以抽象數據類型為特點的基於對象的程序設計,還可以進行以繼承和多態為特點的面向對象的程序設計。學C語言和C++一定要認真去學,一定要多學多練。


分享到:


相關文章: