[問題] 關於C/C++的學習方向與建議

作者: wallrose (牆玫瑰)   2017-07-02 00:07:55
是這樣的
小弟目前研究所在學 下禮拜要去暑期實習
公司用的語言是C/C++ (不太確定是哪個)
先說一下我的程度:
有R的基礎,自認程度不錯 寫程式的邏輯不會太差 有閱讀程式自學的能力
然後python剛學沒多久,語法、邏輯大致沒問題 之後會靠多實作累積
大學、研究所都是數學相關 非資訊
演算法、資料結構、物件導向....等 都沒修過課 資工基礎知識薄弱
但有熱枕去了解 遇到的時候會查資料 所以還是有簡單的概念
以上面試時都有老實說,但還是錄取了
個人經驗
在R熟練的情況下,學習python
我感覺只是熟悉指令 然後有一些邏輯轉換一下 學習曲線還算愉快
想請問:
1. 由於C比我會的語言都更低階 我在上述基礎之下學習C
能夠很快上手嗎??
由於時間關係,我可能直接進公司再邊學C了
不知道是否跟的上大家 可以多少有一些產出??
2. 有推薦哪一本中文學習用書嗎??或是隨便一本都沒差??
3. 若時間關係無法從第一頁開始慢慢看,
有什麼"主題"要優先讀懂嗎??
4. 其他學習建議
若能提出我沒想到 或是思維不正確的地方 萬分感謝!
作者: hsnuyi (羊咩咩~)   2017-07-02 01:17:00
1. 不行 除非你有特殊天份 不然短期內無法真的上手
作者: noodleT (麵T)   2017-07-02 01:18:00
看你用其他的語言寫過什麼,用 C 再些一次,剩下進公司再看*再*再寫一次公司很有可能會讓你先 debug ,這時後很吃人品,看遇到怎樣前輩的程式碼。說不定沒用上什麼演算法之類的,看了也是白搭。
作者: s89227 (Kei)   2017-07-02 01:29:00
先去把指標跟記憶體這塊補起來
作者: steve1012 (steve)   2017-07-02 03:23:00
C有一些眉角 沒辦法快速全了解
作者: tinlans ( )   2017-07-02 07:04:00
數學相關,演算法上手應該很快,資料結構只是達成目的所採取的一些實作手段,跟唸不唸過資工完全沒關係。物件導向,99.9% 的大學教授不懂,所以也亂教,一樣沒差C 要幾小時內快速了解不是不可能,只是通常要有良師。你要無師自通,必須對電腦架構有一定程度的瞭解。
作者: steve1012 (steve)   2017-07-02 08:00:00
對架構有一定了解的人..通常都學過c了xD大學部通常都system programming-os/architecture吧
作者: MOONY135 (談無慾)   2017-07-02 08:18:00
R的基礎...所以想必沒經歷過切TOKEN吧不會不要緊阿 業界通常都以為念數學的邏輯很強應該很快就能上手 身為同樣背景的我只能跟你說先練DEBUG比較實際一點
作者: Bencrie   2017-07-02 12:16:00
2. <= 請先習慣找英文資料
作者: grayStone (灰色石頭)   2017-07-02 16:08:00
學c++
作者: wallrose (牆玫瑰)   2017-07-02 22:38:00
謝謝各位,大致有方向了
作者: tinlans ( )   2017-07-05 03:02:00
其實傳統上 C 是搭配著「計算機概論」或者「電腦科學導論」一起學習的,因此學到 data type 的時候就會跟著學到進制轉換跟 IEEE 754 等等的東西,也會同時學到 EBNF 以及 C grammer 要怎麼自己查。同時對於 C runtimeenvironment 的記憶體佈局有基本的瞭解。只是後來新一代的老師為求速成,把這些步驟都省略、分解、刪除掉了。最終的結果就是讓 CS 科班生連編譯器錯誤訊息都看不懂。很多人哭難的 pointer 在過去的正統教法來說從來不是障礙,其實非科班生根本不需要去特別修那些 CS 專業科目,有本合格的計概課本搭配 C 一起學就很足夠了。
作者: JFLung9536 (立月小蛇)   2017-07-07 14:46:00
C++可以速成 C可能沒辦法
作者: F04E (Fujitsu)   2017-07-07 17:57:00
C++可以速成??
作者: Hazukashiine (私は幸せです)   2017-07-07 21:49:00
C++/C 都可以速成 但是速成的方法很難精通
作者: XX9 (米魯國王)   2017-07-09 09:16:00
有python概念對c還好

Links booklink

Contact Us: admin [ a t ] ucptt.com