為什麼知乎上有的人不推薦 C 語言入門?

時間 2021-05-06 21:00:53

1樓:FRANK

因為C太底層,雖然很適合學習底層概念。但是這樣C的抽象能力低,開發效率低,想要精通很難。建議先學有GC/ARC的語言,然後再學底層,學C。

2樓:黃哥

1、這個有不同的看法,有的人推薦從Python 入門學習程式設計,有的人推薦從C 語言程式設計入門。

2、MIT ,伯克利等大學教cs1 用的程式語言是Python。

國內大學,有的大學教計算機概論時,用的程式語言是Python程式設計,大部分教程式設計選的是C或C++。

3、由於馬上上大一,基於國內的課程設計,那麼先學習C語言吧。

先難後易,學通了C 語言,再學習Python等很容易。

推薦看下面一些書來學習C 語言。

3樓:窗戶

C語言學習中大部分伴隨著文字遊戲,學了很久不知道能幹嘛,然而這種漫長的文字遊戲過程還必須得進行。

C語言繫結學習的知識過多,不說別的,光UNIX的一堆概念、系統呼叫就可以把人玩死,資料結構也是很多人的噩夢,給人信心上的絕對打擊。

C語言其實就是高階彙編,其面向機器的底層思維,原始的接近機器的表達,抽象能力完全是戰五渣,束縛初學者的創造力與想象力。

4樓:

我發現大多數談C語言是基石,C語言入門就是好來就是好的人,都沒有回答乙個問題……

那就是為什麼不用彙編入門……

好吧你說相容性,那麼為什麼不用Bytecode來入門……我覺得最要不得的就是一種,我學習過程很痛苦,所以你們也應該一樣痛苦,不然你們學到的東西「不紮實」的奇怪優越感……

事實上從其他語言入門,更高屋建瓴地學習物件導向、函式式等思想,等以後學到編譯器或記憶體的時候再學C,估計比你學得快、學得紮實多了……

對了,還有一種做底層就瞧不起做網際網路程式的優越感……我就問一句,做微控制器年薪多少,做網際網路年薪多少……都是搬磚,誰瞧不起誰呀……

用得上就學,用不上就不學唄……入門以後學個語言,需要很多時間嗎……

5樓:衣袂

我就很推薦...

c用來入門很好啊,既簡單又底層。科班不二之選。

上來就python,很容易搞不清楚計算機到底在幹什麼。

唉,悲傷,我也希望回答一點專業的問題,可是發現我都不會...

6樓:

作為乙個大一新生,並且是乙個假期預學了C和c++的大一新生,開學先學了c#!!!(痛苦)極度不適,但相對來說我還是更喜歡C,c++

7樓:Weston555

C雖然很基礎,實用性可能也比不上Python。但作為一門很基礎的程式語言,它更重要的意義是培養初學者的思維方式,有此奠定基礎,學其他語言會如魚得水。

8樓:Watson

學習c語言的過程,除了在學程式設計,還是在學習計算機體系,語言語義很底層。使用C語言入門容易受挫,難以快速完成可見的目標。 對大多數人來說,python 是很好的入門語言。

9樓:「已登出」

可能還是因為C 比較偏底層吧,如果想快速做出點東西;當然還是首推前端標籤語言什麼的,其次是像python這種指令碼語言庫函式比較多也容易寫出東西;就算是做科學計算也有matlab可以選擇。至於C 雖然威力最強,但是也不好控制;可發揮性強但又得自己造輪子,語法也比較繁雜。所以如果是想快速入門,對程式設計的核心思想有個大致掌握的話;學C 確實不太適合,可能會使你陷於瑣碎的語法而不能自拔,對使用程式設計思維解決問題而幫助不大。

但是如果做的是比較接近硬體層的話,學 C當然還是好處多多;有助於理解CPU內部工作原理,記憶體分配機制,數位電路層面的實現。就我的愚見看來電腦科學主要是由組成原理,作業系統,網路協議三大塊核心知識構成;編譯原理鏈結軟硬體,程式設計化思想無處不在。至於大資料,雲計算,人工智慧和區塊鏈什麼的其實都是這些東西的深化與利用。

而語言雖然沒人規定它只能用來做什麼,但一定有它擅長適合做的領域;從這個角度來看學習不同的語言會讓你了解領略到不同的知識和思想;可謂是仁者見仁,智者見智。從什麼入門,準備深挖那一塊的知識應該是你自己決定的,之後就可以做到觸類旁通了。然後你就發現語言語法之類的根本不能算計算機甚至程式設計的重點和核心,學過C 或者其他語言入了門之後兩三個小時了解一門新語言,用來寫個小遊戲什麼的還是很簡單的。

更重要的應該還是對演算法,資料結構,硬體組成,各種協議這些東西有自己的理解和領悟;這樣的話能力的提公升應該會更多一些。

總結:C 語言入門有助於了解底層,提公升程式設計的細節能力,但也有可能會陷於語法而忽視演算法;如何選擇取決於自己的發展規劃。

10樓:

一般來說,學C語言的目的是程式設計入門,但是現在程式設計的入門門檻已經比C語言入門的門檻要低了,學C語言反而抬公升了門檻,大部分學生最後就算C語言這門課過了,C語言本身都入不了門,程式設計也入不了門。

11樓:kanesunny

使用C語言,有太多細節問題要考慮,使人無法把思考集中於如何程式設計。比如要考慮整數過大的溢位。另外,大多C的習題側重於數論的演算法,沒學過數論的人完全摸不著頭緒,容易產生焦慮感。

我建議用LOGO做為入門程式設計的語言,因為可以直觀的畫出圖形,看著有趣,也能學到一些遞迴的思想。玩個半年再轉其他語言。

12樓:

作為乙個計算機專業的學生

你之後要學組成原理,彙編,作業系統,編譯原理在學校只開兩三門語言課的情況下,你不學c,靠什麼來學這些課?

如果連大一那點c的知識都沒法掌握的話,轉行到別的專業吧

13樓:danjk159

如果是相關專業的,我當然推薦c語言入門,只是基礎積累期會枯燥點,打基礎嘛,正常。有足夠的時間打基礎和學習。非相關專業的,時間可能不充足,直接應用培養興趣為主。

不過畢業時肯定是相關專業的後期潛力更大,基礎肯定是要的,不過是什麼時候補而已

14樓:奔跑的蝸牛

C入門有什麼不好?

C入門,規規矩矩的變數定義和變數型別,所有語言通用的條件語句和迴圈語句,規規矩矩的方法呼叫方法!單入口的main函式!不得不學的運算子優先順序,不得不了解的常用位元組單位!

不得不用到的遞迴和排序演算法,資料結構!

入門了C,學任何語言都算是有基礎!

15樓:張大王

自來問再多C/C++都是基礎,學就完事了

如果覺得不好入門,建議先學彙編和編譯原理

只有吃過屎才知道飯多香?

(反正彙編和編譯原理都跑不掉 )

16樓:我時常在思考

如果沒有強烈的興趣愛好容易被C語言的黑框框給嚇跑,不如直接去學C#或者是Python…

C#可以拖拖控制項製作個計算器,2048小遊戲容易產生成就感…激發興趣。

python簡單,對於新人很友好,也容易寫出圖形程式,所以個人推薦C#入門

當然學好了C#我覺得認真學下C語言是有必要的,這樣方便寫資料結構演算法,更深入理解計算機底層工作的邏輯…

17樓:阿毛

因為學習周期長,需要學習一系列系統的知識作業系統組成彙編模電數電資料結構一堆東西,非科班,如果不是興趣濃厚學起來會很枯燥,短時間看不到成果,科班出身大都C入門

18樓:zokoko

就跟很多程式設計師只會死腦筋程式設計一樣,

中文能過關嗎?入門是什麼?跨一步就進門裡了,得多輕鬆啊是不?

哪個大神敢說自己可以教任何人任何水平c語言入門的?誰有水平都可以馬上反駁

js不同,任何人任何水平都能入門,我說的

19樓:

題主是大學生,那一定是C入門,或者彙編入門!不推薦C入門那一定是僅限於非本科或者轉行之類的非科班出身。對於他們是不是真的不應該C入門我都不敢說。對大學生一定是C或彙編入門。

為什麼知乎上有的人apple pencil的筆尖每天都大量用,很久都不壞,有的人幾個月就禿了?

迷開朗吉鑼 9年5臺iPad老使用者分享一下對這道題的看法。今天後我也用了三四個筆尖了,磨損的原因主要有以下幾種。第1個原因是採用了類紙膜。類紙膜本身是用於書寫量和繪畫量非常大的人,通過增加貼膜表面的粗糙度來獲得阻尼感。筆尖在上面書寫的時候,就會產生很多摩擦損耗。通常情況下,在類紙膜上書寫2 3個月...

為什麼知乎上有的回答喜歡講故事?

有些東西,直接說你不一定能領會到其中的道理,如同快餐一般。好的東西必須要細細品味。這些故事都是知乎們親身經歷得出的人生感悟,在事實中去感受他們的領悟,豈不比空空的乙個答案好的多嗎? 紅晝 這有點古風的感覺。在很久以前,大臣想勸諫君主的時候,習慣先講個故事,把自己的觀點融到故事裡。這樣就不會直接指出君...

為什麼有的人頭上有2個旋,有的人只有1個?

乙個旋或者兩個旋的人比較多,如果頭胎是男孩,一般就是乙個旋,後面再生的男孩女孩也是乙個旋。如果頭胎是女孩,一般就是兩個旋,後面生的男孩女孩也是兩個旋。這個規矩是我小時候發現的 馬力大仙 從專業和科學角度分析我做不到,我給你擺乙個事實。我有三個旋,其中乙個在正前方正中間。我女兒也有三個旋,位置幾乎和我...