作者qazkevin (Linus)
看板C_and_CPP
標題[問題] 學C學到有點迷茫...
時間Thu Mar 29 23:40:45 2018
各位慣C哥與C達人大家好~
小弟最近覺得學C學得有點迷茫...
該怎麼說呢...
本身對C的語法算了解,學C有一段時間了...
目前學C的方式都是在網路上刷題目,
還有用C實作出與資料結構&演算法的相關議題,
小弟很迷茫的是...
難道一直這樣練習寫C,
我就能變成一個很會寫C的人嗎?
或者這樣就能變成一位很懂C的人嗎?
本身是想以後朝Linux相關的行業去發展...
確切來說可能是想碰跟Linux Kernel相關的東西,
自己有去買一本Linux Kernel的書來讀...
但就是讀了才覺得迷茫...
感覺裡面的知識不是只要懂C就好...
似乎可能還要懂一些硬體或OS相關的知識...
不知道各位大大能否幫我這位即將找工作的新鮮人解惑...
到底我還需要學些甚麼?
難道要把計算機組織&OS拿出來讀?
PS. 小弟電機系,沒修過這兩門
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.166.25.122
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_and_CPP/M.1522338047.A.581.html
1F:推 winest: 你需要找個自己有興趣的題目實作一下 寫再多小題目我覺得 03/29 23:44
2F:→ winest: 也沒用 os kernel修個課邊學知識邊配code看比較能理解 03/29 23:44
3F:→ qazkevin: winest大大,請教一下所以建議我去修OS的課然後寫作業嗎 03/30 00:01
4F:推 peterwu4: 找教授做專題~~~ 順便賺賺獎學金生活費XDD 03/30 00:05
5F:推 chuegou: 老話一句 語言只是工具 03/30 02:17
6F:推 damody: 建議多學幾種語言 c只是工作用工具的一部份 03/30 02:53
7F:→ damody: 實際ui一定用網頁 底層才是c 但為了方便會有大量腳本語言 03/30 02:55
8F:→ damody: 這就是現實世界 03/30 02:55
9F:推 fatb: linux涵蓋面蠻廣的 建議找個方向去專精 網路面算是比較普及 03/30 03:06
10F:推 springman: 嗯、寫自己喜歡的程式,才會持續改善與研究。 03/30 05:27
11F:→ testPtt: 那你有學c++嗎? 03/30 08:01
12F:→ qazkevin: testPtt大大,我目前只學純C,沒學C++,想說如果碰底層L 03/30 08:31
13F:→ qazkevin: inux Kernel似乎不用用到C++!? 03/30 08:31
14F:→ carylorrk: OS/Embedded/RTOS/Driver,一些經典書看看練習做做吧! 03/30 09:53
15F:→ carylorrk: 另外 DS+Algorithm 是必備知識,看看書做做題目也不錯 03/30 09:56
16F:推 Sidney0503: 可以不用學C++ 但是計算機組織作業系統要讀 03/30 11:53
17F:推 james732: 研磨工具很無聊,但工具不會辜負你的努力 03/30 13:34
18F:→ james732: 計算機組織作業系統要讀 +1 03/30 13:35
19F:推 descent: 通常會接觸到 linux driver 的工作, 建議先從這裡開始 03/30 18:25
20F:推 wilson6405: 跟你一摸一樣的狀況 最近在看OS 03/30 18:45
21F:推 CarbonK: 你要知道…… 03/30 21:31
22F:→ CarbonK: C 是一個為了開發 UNIX 作業系統設計的語言 03/30 21:31
23F:→ CarbonK: 因此他很多功能都是跟系統相關 03/30 21:31
24F:→ CarbonK: 要學好 C 的話 OS 的知識不可少 03/30 21:31
25F:→ CarbonK: 然後還有硬體架構 (計算機組織) 也要了解才行 03/30 21:31
26F:→ CarbonK: 懶人包:還是去把基礎知識打好吧,打好回來看會發現自己 03/30 21:31
27F:→ CarbonK: 了解 C 語言的功能為什麼這樣設計了 03/30 21:31
28F:→ qazkevin: 感謝各位大大!我會開始讀OS與計組的! 03/30 23:07
29F:→ uranusjr: 想走 Linux kernel 記得先受言語虐待的專業訓練, 不然你 03/30 23:51
30F:→ uranusjr: 不小心寫錯幾行被 Linus 嘴到放棄人生就麻煩了 03/30 23:52
31F:→ descent: 他們只收精英阿 03/30 23:57
32F:推 hpyhacking: 你先想想自己想要寫什麼程式出來,需求是什麼,在這過 03/31 02:52
33F:→ hpyhacking: 程中自然而然就會變強 03/31 02:52
34F:→ qwaszx771129: 了解Linux kernel跟OS架構之後,在看是x86,ARM學習? 04/13 17:02
35F:→ qwaszx771129: 另外kernel 3.x以後的架構有差異比如device tree。 04/13 17:03
36F:→ qwaszx771129: 建議可以在x86上寫一個簡單的module driver 04/13 17:03
37F:→ qwaszx771129: 然後在寫一個user space app去呼叫IO下到kernel做事 04/13 17:04
38F:→ qwaszx771129: 這些都沒問題後剩下大多就是驅動的規範與registerRW 04/13 17:06