說在前面
為什么會寫下這篇文章做裙?本人也并不是什么大神岗憋,但是也自學了很久,從一個小白開始自學锚贱,期間走過很多彎路仔戈,掉過許多坑。一路跌跌撞撞下來惋鸥,算是有了點收獲杂穷,有了點感想,將它們記錄下來卦绣,希望能幫助新入坑的小伙伴們少走些彎路耐量。雖然說不上句句珠璣,但每句都是有感而發(fā)滤港,真心實意廊蜒。
思想準備
持續(xù)性的學習才能帶來實質性的提高。長話短說溅漾,不要三分鐘熱度山叮。
誤區(qū)
常看見有人提問添履,我英語不好是不是不適合學呀屁倔?我數(shù)學不好是不是不適合學呀?老是有人在擔心英語和數(shù)學這兩樣東西會成為你學習路上的最大障礙暮胧,可是你此時的猶豫不決才是你的最大障礙锐借。
首先你要明白好的數(shù)學和英語能帶給我們什么?
好的英語往衷,能讓你獲取技術資訊更加快速钞翔,準確。最新的資料席舍、資訊往往是國外的布轿。
好的數(shù)學,能讓你更快速的解決問題。
站在領域頂端的大神們汰扭,毫無疑問稠肘,擁有好的英語水平和數(shù)學水平。但是东且,我們只是想自學一下而已启具,只是入個門罷了,它們并不會讓你無法學會C珊泳。而且鲁冯,你是一個活人呀,你有手有腳有腦子色查,你覺得哪方面不強薯演,學習補上不就行了?你不停發(fā)帖詢問糟糕的英語和數(shù)學會不會影響你自學的時間秧了,早足夠你背會兒單詞跨扮,解幾道題了。
正式學之前該做的準備
編譯環(huán)境的準備
逞檎保看見發(fā)帖求介紹軟件以及軟件安裝出現(xiàn)問題的衡创。然后一堆人推薦了一堆軟件,然后讓新手陷入選擇困難晶通。我想說璃氢,你是學習C語言的,不是學習編譯器的狮辽,你應該專注于語言特性與編程思路一也,而不是工具的使用,主次應該分清喉脖。因此椰苟,新手需要的軟件是易上手。在這不推薦VC6.0树叽,因為它是在是太老了舆蝴,現(xiàn)在的系統(tǒng)win7,win10什么的,安裝它基本上都會有兼容性問題题诵,現(xiàn)在連計算機二級都不用VC6.0了须误。也不推薦使用宇宙第一IDE-VS系列,因為它龐大仇轻、復雜。不可否認它的強大奶甘,但是還是之前那句話篷店,初期應該注重語言本身,并且微軟為自家的編譯器制定了不少規(guī)則,新人常會踩坑疲陕,比如scanf_s()方淤。所以本著簡單易上手的原則,推薦使用DEV-C++蹄殃。
自學資料的選擇
資料大致分兩類携茂,視頻與書籍。無論怎樣诅岩,書籍是必不可少的讳苦,因為先不說你看的視頻質量層次不齊,其次吩谦,視頻是被動的攝入知識鸳谜,而看書是主動學習,效率也不一樣式廷。當然咐扭,不同人對不同學習方式的效率也不一樣,但是一本用來參考的書必然是不可缺少的滑废。
再來看書的選擇蝗肪,先搞清你學C是用來做什么的。倘若只是考個二級蠕趁,那么譚浩強的書可以一看薛闪,但是請網(wǎng)上找一份勘誤,里面有不少錯誤妻导。如果你的目標不止計算機二級逛绵,那么《C Primer Plus》值得你一讀。
額外推薦
《C和指針》倔韭,它詳細但又不失簡練的介紹了C語言以及C標準困的方方面面术浪,且花了大量的篇幅和圖示來將指針的概念講的很清楚。
《C程序設計語言》作者是Kernighan那本寿酌,即傳說中的K&R胰苏。
應該掌握的技能
學會閱讀
看到這個標題,大家可能會忍不住吐槽了醇疼,從小念到大的書硕并,還不會閱讀?
嗯秧荆,可能你還真的不會倔毙。經(jīng)常會出現(xiàn)這種情況,書上某個例子出現(xiàn)個新東西乙濒,哇陕赃,沒學過卵蛉,好難,看不懂么库,再看一會傻丝,還是不懂,不想看了诉儒∑乡郑或者試圖在初期搞清楚每一個小細節(jié)。你看到了某些內容忱反,就想了解它的全部泛释,一頭扎進涉及的每個主題,越陷越深缭受。但是胁澳,一次性地學習所有程序設計原理、技術和語言功能是不可能的米者,你應該注重于當前主題下想給你呈現(xiàn)的知識韭畸,以及好的、有效的程序設計技巧蔓搞,而不是一些長時間內都用不上的技術細節(jié)胰丁,因為,往往在下一章就會有你所需的答案喂分,且一旦你學會編程锦庸,你完全可以自己到手冊中查找技術細節(jié)。
學會提問
提問也是一項應該掌握的技能蒲祈「氏簦總是有這樣的提問者,一張圖片梆掸,或者一大串格式奇葩的代碼扬卷,再問上一句錯哪了?酸钦?怪得?
首先應該明確一點,沒有人有義務回答問題卑硫,所以你提問的方式讓人不爽了徒恋,可能就不會有人想回答了,或者誰也不知道你問的是什么欢伏,自然不會有人回答入挣。
提問之前,你首先都得明確你的要求是什么硝拧,即你預期的效果是什么径筏?再是风皿,你為達到這個目的,做了什么努力匠璧?出現(xiàn)了什么問題?最后是截圖截得清楚點咸这,代碼格式也弄弄好夷恍。
這樣,那些懂的自然能有針對性的回答你媳维。節(jié)約大家的時間酿雪。
搜索引擎的使用
可以這么說,網(wǎng)絡是你最好的老師侄刽。如何從繁雜的網(wǎng)絡中尋找到你想要的資料指黎?通過搜索引擎。學會搜索編程資料是一個重要的技能州丹。搜索引擎最強大的是谷歌醋安,可惜需要科學上網(wǎng),退而求其次你可以用用必應搜索和百度搜索墓毒。將你的問題提煉成關鍵字吓揪,輸入搜索框搜索。當然這是最基礎的方式所计,更多技巧請搜索“如何用好谷歌等搜索引擎”柠辞。
正式學習中該注意的幾點
多動手
實踐出真知。將不懂的程序編譯執(zhí)行一遍比你在那冥思苦想要有效的多主胧,且有些問題你只有在實踐中才能體會到叭首。
多思考
知識不是眼睛過上一遍就算了,問題不是看上一遍就會了踪栋,你需要去思考焙格,思考這個程序執(zhí)行的過程,去思考哪一步除了差錯己英,去思考這個問題的解題思路间螟。只有不斷思考,才能將書本的知識內化為自己的损肛。
多總結
總結也是一種思考厢破,在這我鼓勵大家寫寫博客,將所學到的知識治拿,碰見的問題摩泪,記錄下來,你會發(fā)現(xiàn)受益匪淺劫谅。
多交流
不要閉門造車见坑,現(xiàn)在是互聯(lián)網(wǎng)世界嚷掠,你不去外邊看看永遠不知道自己出于什么水平。和人交流荞驴,你會不自覺的吸收他們好的一面不皆。一開始你是處于請教的一方,你能快速從請教對象上獲取知識熊楼,當技術成長后霹娄,你處于被請教的一方,你在回答他人問題的過程中也是對自己掌握知識的梳理與鞏固鲫骗,“好面子”的你會不斷學習以保持你的技術領先犬耻。
結語
OK,也就寫上那么多吧。有心的自然會去學执泰,會去思考枕磁,無緣的多說也無益。再說术吝,只是現(xiàn)在的我的感想计济,經(jīng)驗、學識所限顿苇,這些東西還不算完善峭咒。就這樣吧~
ps:轉載請說明出處。