想窺探神秘的代碼世界?最好的入口無(wú)疑就是C語(yǔ)言由驹。
C語(yǔ)言是計(jì)算機(jī)體系結(jié)構(gòu)的基礎(chǔ)芍锚,向下可以操作硬件(包括ARM,DSP蔓榄,單片機(jī)等各種微處理器)并炮,還可以寫(xiě)驅(qū)動(dòng),寫(xiě)OS润樱,寫(xiě)編譯器渣触。向上可以進(jìn)一步的學(xué)習(xí)C++,JAVA等面向?qū)ο笳Z(yǔ)言壹若,再學(xué)習(xí)一些圖形用戶(hù)界面框架,比如Qt皂冰,MFC店展,就可做出類(lèi)似于計(jì)算器、QQ等Window桌面應(yīng)用秃流,再比如Android赂蕴,就可以做出微信等Android應(yīng)用,再比如Unity3D舶胀,就可以做出類(lèi)似王者榮耀概说、刺激戰(zhàn)場(chǎng)等手游。想想是不是就有點(diǎn)小激動(dòng)呢嚣伐!
那我們就腳踏實(shí)地糖赔,一步一步的走下去吧。先從如何學(xué)習(xí)C語(yǔ)言開(kāi)始轩端,后面的詳細(xì)學(xué)習(xí)方法之后也會(huì)分享的哦放典。學(xué)會(huì)了C語(yǔ)言,就進(jìn)入了計(jì)算機(jī)領(lǐng)域的大門(mén),對(duì)于以后學(xué)習(xí)C++奋构、Java等面向?qū)ο笳Z(yǔ)言都大有益處壳影。
下圖是一個(gè)網(wǎng)上流行的程序員“鄙視鏈”。其實(shí)我想說(shuō)的是弥臼,還是有一定道理的宴咧,哈哈哈,笑而不語(yǔ)径缅。
作為“程序猿大叔”的我總結(jié)了學(xué)習(xí)C語(yǔ)言的幾個(gè)步驟悠汽,其他編程語(yǔ)言學(xué)習(xí)方法基本類(lèi)似,希望對(duì)大家有所幫助芥驳。
1.看書(shū)
學(xué)習(xí)一門(mén)編程語(yǔ)言首先學(xué)習(xí)基本語(yǔ)法柿冲。
C語(yǔ)言的基礎(chǔ)語(yǔ)法包括數(shù)據(jù)類(lèi)型、運(yùn)算符兆旬、表達(dá)式假抄、數(shù)組、邏輯運(yùn)算丽猬、函數(shù)宿饱、指針等。學(xué)習(xí)這些先買(mǎi)一本入門(mén)書(shū)籍脚祟,個(gè)人還是推薦經(jīng)典的《譚浩強(qiáng)C語(yǔ)言》谬以,既然挺多大學(xué)選擇這本書(shū)作為教材,總歸有其合理之處吧由桌。這本書(shū)對(duì)知識(shí)點(diǎn)的介紹都比較淺顯为黎,但涵蓋面比較廣。邊學(xué)語(yǔ)法便敲案例行您,看著代碼在計(jì)算機(jī)上運(yùn)行起來(lái)是不是也有點(diǎn)小激動(dòng)铭乾。這樣便有了繼續(xù)學(xué)習(xí)下去的動(dòng)力。
C語(yǔ)言深入的話(huà)推薦《c primer plus》娃循,你會(huì)發(fā)現(xiàn)有些地方晦澀難懂炕檩,不要被疑問(wèn)絆住腳步,浪費(fèi)太多時(shí)間在細(xì)枝末節(jié)的地方捌斧。C語(yǔ)言只是你進(jìn)入新世界的第一步而已笛质,而編程的世界遠(yuǎn)比你想象的更廣闊,更有意思捞蚂「狙海《c primer plus》更適合作為一本字典使用,放在電腦旁洞难,方便隨時(shí)查閱舆吮。
我也推薦通過(guò)教學(xué)視頻入門(mén)揭朝,老師會(huì)講解重難點(diǎn)知識(shí),并且進(jìn)行演示色冀,相對(duì)于看書(shū)會(huì)更容易√陡ぃ現(xiàn)在網(wǎng)絡(luò)這么發(fā)達(dá),有很多優(yōu)質(zhì)的教學(xué)視頻可供利用锋恬。
2.寫(xiě)代碼練習(xí)
想學(xué)好一門(mén)編程語(yǔ)言屯换,僅僅是看書(shū)而不動(dòng)手去練習(xí)是遠(yuǎn)遠(yuǎn)不夠的,一定要把書(shū)里的代碼搬到電腦里与学。
大多數(shù)人是使用Windows系統(tǒng)彤悔,那么就先下載一個(gè)Visual Studio吧,推薦使用VS2015索守。
喜歡Linux的朋友晕窑,可以下載一個(gè)VMWare虛擬機(jī),在再虛擬機(jī)中安裝Ubuntu等基于Linux內(nèi)核的操作系統(tǒng)卵佛,然后再安裝gcc杨赤,gdb。
安裝好開(kāi)放環(huán)境之后截汪,就可以開(kāi)始愉快的敲代碼了疾牲。
試著寫(xiě)一些簡(jiǎn)單而有趣的代碼,比如 Hello World衙解,文件讀寫(xiě)阳柔,邏輯運(yùn)算、常用算法等等蚓峦。
3.總結(jié)心得體會(huì)
把自己覺(jué)得抽象難懂的程序放到VS中跑一跑舌剂,調(diào)試一番,會(huì)有很多發(fā)現(xiàn)枫匾。很多代碼在調(diào)試之后就能理解架诞,會(huì)有一種恍然大悟的快感。我以前電腦里就經(jīng)常會(huì)有一個(gè)Test工程文件夾干茉,哪里有疑惑,就把代碼放進(jìn)去很泊,一Debug角虫,全部疑惑就解開(kāi)了。
然后把這些總結(jié)整理起來(lái)委造,這樣知識(shí)就變成自己的了戳鹅。推薦使用印象筆記進(jìn)行記錄,很方便昏兆,隨時(shí)可以查閱枫虏。
比如這樣,了解 Union 的內(nèi)存結(jié)構(gòu)
比如這樣,了解 C 語(yǔ)言的內(nèi)存分配
4.寫(xiě)一個(gè)小作品
基本知識(shí)掌握的差不多了隶债,試著寫(xiě)個(gè)小程序腾它。比如:計(jì)算器、打字游戲死讹、圖書(shū)管理系統(tǒng)等瞒滴。
看著人生第一個(gè)自己開(kāi)發(fā)的程序,會(huì)有很大的成就感赞警。而且在寫(xiě)程序的過(guò)程中妓忍,你的編程能力也會(huì)得到很大的提升。
計(jì)算器愧旦、打字游戲世剖、圖書(shū)管理系統(tǒng)控制臺(tái)程序我都寫(xiě)過(guò),當(dāng)時(shí)是作為課程設(shè)計(jì)笤虫,真的是成就感滿(mǎn)滿(mǎn)旁瘫。
很多同學(xué)可能不滿(mǎn)足于“黑不溜秋”的控制臺(tái)程序,想做一個(gè)有界面的程序耕皮,這就需要用到圖形用戶(hù)界面框架了境蜕,上面已經(jīng)列舉過(guò)了。關(guān)于這些的學(xué)習(xí)方法會(huì)在之后介紹凌停。
最后總結(jié):
寫(xiě)代碼練習(xí)粱年,寫(xiě)代碼練習(xí),寫(xiě)代碼練習(xí)罚拟,重要的事情說(shuō)三遍台诗。
其實(shí)做為一個(gè)開(kāi)發(fā)者,有一個(gè)學(xué)習(xí)的氛圍跟一個(gè)交流圈子特別重要這里請(qǐng)私信我“編程”不管你是小白還是大牛歡迎入住大家一起交流成長(zhǎng)赐俗。小編會(huì)在里面不定期分享干貨源碼拉队,包括我精心整理的一份c++零基礎(chǔ)教程。歡迎各位感興趣的的小伙伴阻逮。
學(xué)習(xí)思路:
學(xué)習(xí)資料: