學C 後還有必要學C語言嗎?

時間 2021-05-05 19:03:03

1樓:也曾追風逐月

觀點,有必要

個人認為c#是比c更高階的程式語言

因為絕大多數你可能要用的東西,它都幫你封裝好了而c不一樣,大部分你想要的功能都要你自己來實現從開發效率上講,c#就夠了

如果你希望從更深的層次理解程式語言,理解編譯原理等等,還是建議學一下c

2樓:GTJin

很多大學的課程設計都是這樣,每門技術都學習一部分,其實你細心研究一下,學習了C#基礎後,後面還有.net,asp,資料庫,設計模式,框架等技術,如果想從事C#方面的開發,後續的內容也都是需要學習的。當然在學習過程中如果有精力,學習C語言也沒有壞出,C#封裝了很多東西,比如指標等。

C語言學好了,程式設計底層的原理會理解的更加深入。

個人建議,選擇乙個主語言,也就是你將來想通過它吃飯的。花大力氣從開頭系統的學習。然後還有第二語言,比如C語言,選擇性的學習,比如指標、堆疊等;不建議從頭學到尾,知識太多,畢竟人的精力有限。

3樓:zls喔

任何語言都無法代替C語言,C語言是最實用的語言,沒有之一,你學會了C#只能代表你學會乙個語言,學會C語言你就會找到其他語言的共通性,C語言是很多程式語言的基礎,學會了C語言,你無論走底層開發還是其他開發都能走得通

4樓:劉定心

學好c# 之後,指定要懂c語言

c# 是我最喜歡的語言,非常優雅。

另外提醒一下。c# 區分值型別和引用型別,一定要注意這一點。

c#不等於.net

5樓:asdacs

如果你是想提高自己的能力,多學點都有好處。

除此之外,不要拋開自己需要用到程式語言的領域來談該不該學某門語言。

如果你是要接觸作業系統、晶元一類的底層工作,C語言必修,這個沒話說。

但是如果你要做網頁前端或者開發安卓應用的話,您隨意就好,不學也沒事。

如上所述,除了說是多學點提高自己的能力之外,要學啥語言取決於你要用什麼語言。

6樓:Kaniu

要不要學C語言,和你已經掌握了什麼完全沒有關係。

當你想要學習的東西,涉及到了更加底層的東西,你就不得不學習C語言了。無論是作業系統,還是C#的虛擬機器,亦或者資料庫,都避免不了。有沒有必要學C語言是看你覺得自己有沒有必要更深入的了解計算機

7樓:

學C#,其實,絕大多數書都沒講透,講得亂七八糟的。什麼CLR、什麼詞法翻譯、什麼委託,等等,一踏糊塗,雲裡霧裡,自己都不知道自己在說什麼。

所以c語言還是有必要學的,除此之外,應該還要學一點編譯原理,學一點彙編。

8樓:企鵝

個人認為是有必要的。計算機程式設計學習入門大概分三個學習方向:工程、演算法、原理。

在你徹底學習C#之後,你會對軟體工程有著比C語言入門的同學更好的認識,但是,我姑且認為此時你的演算法能力是薄弱的,而至於底層原理則更是知之甚少。

C語言或是說絕大部分大學在教學的C風格C++,可以幫你更好地理解計算機的底層原理,同時,由於語言更貼近於底層,你也將有乙個更好的機會去接觸並深入演算法。因此,C語言的學習可以幫助更好補全這兩點。

當然,假如你的培養方案(課程安排)中還包括:資料結構與演算法、編譯原理兩門課程的話,C語言的學習並不是必要的。在時間緊張的情況下可以不額外學習C語言,但如果有心去鑽研一下的話,會讓你在上這兩門課的時候更加輕鬆。

9樓:詩和遠方

本人大學期間學習了C語言並考取了相應的證書,當時也是聽學長說,必須得學啊,學了以後對工作有大大的好處,到現在沒感覺對現在的工作有啥好處,int函式都忘了,如何word啊 Excel啊更加實用。本人學藝不精啊,我覺得如果學校語言課程有就多學學吧,為啥啊?因為閒著也是閒著啊,技多不壓身,沒準哪天能用著呢。

哎,又講用著了才學,其實我一直反對有用才學,其實啥叫有用啥叫沒用,我自己也沒搞清楚。總之學吧,學生就得學啊。

10樓:普通少年pro max

現在很少有某一門語言能幹,其他語言不能幹的事情了,原則上你已經可以開始幹活了。

但我個人還是建議,有時間和精力的情況下,學一下C/C++,折騰一下偏底層的指標等內容,對整個程式的預處理,編譯,鏈結等過程有個系統了解,加深一下對計算機整個體系的理解,這還是挺值的的。

11樓:PuzzleX

建議先拿《明解C語言》 《21天精通C++》簡單的C/C++書碰一碰釘子,然後在回過來看C#

語言層面很快就能上手了,語言關過了之後再考慮下一步.

Unity遊戲 .Net core伺服器端都可以目前來說常見的C開發基本上就是嵌入式了,演算法題,或者涉及到linux C庫的C++程式設計,要麼就是考證

12樓:

有必要的,而且這個過程是你深入了解C#及其圍邊執行環境,之後便會有這個衝動。這是其他語言沒有的魅力。可能是它借鑑了許多其他語言優勢會促使人去了解它的被借鑑者。

(可能開創者本身對其實它語言沒什麼歧視)

況且C#是還有指標的。了解一下久經不衰的東西是有好處的況且語法又不難。

13樓:

沒有必要為了學一門語言而學一門語言。

先問自己想幹啥。

想用指標來虐一下自己? - 學

想知道什麼是錕斤拷?想自己來管理記憶體?- 學想深入學習計算機作業系統?- 學

想接觸一下偏「硬」的程式設計? - 學

想搞遊戲引擎/圖形學? - 學

等等..

否則不學

14樓:牛奶源

先說結論:有

學習一項技術,如果一開始的目的就是為了找個用該技術的工作賺錢的話,重要的是對這項技術的細節的掌握程度,也就是常說的「深度」。但按題主的描述,應該還是在上學,個人認為學生階段應該更多地去了解整個計算機領域的技術,也就是「廣度」。借助學習C語言,你可以了解到作業系統、檔案系統、記憶體分配等等一系列知識_8(:

3 」∠ )_ 不需要對技術細節非常清楚,但首先能有乙個大概的印象,也是極好的。

15樓:皮皮關

不好直接回答有沒有必要,學習能力夠強的話當然是都學更好。

簡單說一下學C#之後再學C的好處:

C#是比較新、比較實用的語言,抽象層次比較高。很多重要的東西,比如記憶體管理不需要考慮,所以其實C#更適合培養程式思維。學C#可以避免初學者一直在基本知識點裡兜兜轉轉。

在C#已經良好掌握的前提下,再學C,可以讓你明白為什麼要考慮記憶體管理,如果是自己管理記憶體應該怎麼考慮。

還有值和引用的問題,C#區分值型別和引用型別,學懂的基礎上再學C的指標,就會明白引用到底是怎麼一回事。對照學習C語言還可以思考高階語法如何用基本語法實現。

C語言本身的語法特性很少,半本書就能學完大部分內容,但是理解透徹也不容易。

總之,學習C更偏基礎,更接近計算機原理,但大部分應用場景解決實際問題別找C。它是從事計算機相關專業的人士必學語言之一。

16樓:瓦利

如果是計算機學生肯定還是需要的。

C#把太多東西向你隱藏了,其中包括對記憶體的管理。作業系統以及語言虛擬機器是怎麼樣分配管理記憶體的?如何避免記憶體洩漏?

這些都是只有C/C++這類底層語言才能暴露給你的。學好C,搞清楚作業系統的棧、堆都是怎麼工作的。

17樓:氷泠

看個人需要吧,畢竟除了語法不一樣,應用領域也不同,你需要哪個學哪個,你學了C#,C不需要用了,那就不用學,你覺得需要C,我要做乙個嵌入式的系統或者要點稍微底層的東西,那你就學C.

18樓:dm2

一般的順序都是先學玩C,再學其它的會容易上手。

因為C相對其它語言,語法上面更簡單易懂,非常適合初學者入門。

要不要學C就看你對C感不感興趣了,以後需不需要用到C。

不過你既然已經學完了C#,想必再學習一門新語言C,對你來說應該不是問題。

建議是,有時間就學一下C。

學C 之前要學c語言嗎?

同時學。既要掌握printf scanf fprintf fscanf,也要掌握istream ostream ifstream ofstream.學著學著你就會發現,c語言和c 沒啥不同,知識點是互通的 大碼猴 C語言是面向過程程式設計 C 是物件導向程式設計 先了解面向過程再了解物件導向 建議先...

學了C 和Java後還有必要學MATLAB嗎

圓胖腫 matlab的指令碼可以看作是dsl,也就是domain specific language 其實指令碼都是隨便看看就用的東西,談不上什麼學不學 簡單說就是,等你要用的時候,再看不遲 Zhyuxixi matlab不用特意學,語法和python類似,簡單。哪天要用到了文件看看,網上一查就會了...

學C語言時需要學Linux嗎?

bleedingfight 不需要先學linux,但是純學C,聯絡一些語法,在linux下無疑是非常方便的,你只需要linux系統,啥都不需要,vim gcc就可以開始愉快的開發了。啥ide都不需要。 hinayand 看你的需要,如果你想用VS用來開發 Windows絕對是你的菜 畢竟如果你不用M...