C語言學到什么程度可以做項目?

很多初學C語言的小伙伴革砸,在學習之初并沒有一個大概的概念除秀,學習這門語言需要掌握多少知識點,怎么才算學的差不多算利?

C語言的精髓點在哪册踩? 學到多少東西才能夠達到做項目的標準?學習的時候需要注意哪些細節(jié)點效拭?疑問太多以至于壓得自己喘不過氣來暂吉。小編從項目的角度分析C語言到底需要掌握哪些知識,為什么要去掌握這些點缎患,怎么去掌握慕的,在此嘗試著總結(jié)以下幾點,未必都是對的挤渔,起碼可以做到親身經(jīng)歷业稼。

基本的數(shù)據(jù)操作,運算規(guī)則蚂蕴,常見程序結(jié)構(gòu)設(shè)計

很多人覺得這么幾點我都看了多少遍了,早就爛熟于心了俯邓。舉個簡單的例子骡楼,printf打印可能是最常使用的函數(shù)了,但是這個函數(shù)在真正大型工程中稽鞭,很少直接去調(diào)用鸟整,為什么?

主要項目中涉及到封裝的概念朦蕴,什么時機加入打印在調(diào)試大型系統(tǒng)的時候篮条,更容易定位問題弟头,這些編程思維對于初學者來說很難接觸到,也很難想到涉茧,任何復雜的事物都是由簡單的細節(jié)環(huán)繞而成赴恨,在學習之初不要覺得這些很簡單的數(shù)據(jù)操作很簡單,要真正納入自己的知識體系還是需要花點心思伴栓÷琢可以在學習的時候钳垮,網(wǎng)上搜一些資料看這些數(shù)據(jù)操作以及運算規(guī)則是如何使用具體的場景中惑淳。

很多人初學者可能會有疑問覺得去哪里找這些代碼去,世界軟件發(fā)展了這么多年饺窿,最不缺的就是代碼,在github或者開源中國里面代碼多如牛毛。學習的對象也是數(shù)不勝數(shù)。有點扯遠了,這觸及到另外一個學習編程的步驟,學會看懂別人的代碼落追,然后才能嘗試寫出優(yōu)質(zhì)的代碼轿钠,知己知彼百戰(zhàn)不殆贷腕。曾經(jīng)聽一個編碼高手說過“技術(shù)這東西只要花的時間長胸囱,肯下功夫早晚都能搞定妹卿,只要進入狀態(tài)了,什么方法都能想的出來”铺纽,看書學習也罷凤跑,看視頻學習也罷,需要讓自己插上聯(lián)想的翅膀呜笑,把自己的思維境界打開曹抬。

說到運算規(guī)則,涉及到代碼的格式的問題为牍,說說身邊人的事情抖韩,去年招了一個剛畢業(yè)的學生,基本功不是很好属桦,但是有一個特質(zhì)專注力很高亏吝,能沉得住氣止喷。當初見第一眼就覺得是個做軟件的苗子,有了第一印象后面的事情就順理成章了植康。很多經(jīng)驗不是很足的同學吕嘀,參加面試回答的問題也不是很理想赞季,但還是被錄取了,其中一個因素就是你身上有公司需要的基因淑倾,這多少算來有點運氣的成分在里面了。今年這哥們覺得很突然,說為啥當初剛開始寫代碼的時候為啥不要求那么嚴格,說了幾句話,初學者特別是基礎(chǔ)很差的情況下粗恢,要求太多只會讓一個人慢慢失去對這個行業(yè)的信心席镀,也許會錯失一個軟件天才匹中。隨著時間推移能夠邁入軌道了,那么就該要求一些基本的職業(yè)素養(yǎng)了豪诲,代碼的格式顶捷,就該要求了。很多初學者覺得寫的代碼越高深屎篱,越讓人看不懂才叫高手服赎,有這種想法的趁早打住。大道至簡交播,這四個字在任何時候都不過時重虑。做的復雜邏輯混亂只能說明當初在設(shè)計的時候,沒有徹底想明白堪侯,想明白了展示出來一般都比較舒坦平整嚎尤。

指針,數(shù)組伍宦,結(jié)構(gòu)體芽死,枚舉靈活運用

不要只看這幾個字,幾乎是C語言里面最精髓的代表次洼。數(shù)組這個概念基本上還能理解透徹关贵,說到指針這個應用場景太多,而且在什么項目中幾乎都離不開指針的使用卖毁。變化無窮揖曾,會用的覺得其樂無窮,不懂的哭上天亥啦。記得在互聯(lián)網(wǎng)有個流傳很長時間的文章炭剪,林銳的我的大學十年(有興趣的同學可以去網(wǎng)上查閱,編程的人生也可以很彪悍翔脱,記得當初發(fā)燒期間還專門買了林銳的一本高質(zhì)量編程)提到了做了一個C語言的項目奴拦,為了繞開指針最后全部用數(shù)組代替實現(xiàn)了,后來做的項目也黃了届吁。不是說因為用數(shù)組使用就不行错妖,項目的定位方向出問題了绿鸣。用數(shù)組完全替代指針這條路也是可行的,但是會花費相當大的周折暂氯。

說到指針潮模,不能不提到計算機專業(yè)開的另外一個課程,數(shù)據(jù)結(jié)構(gòu)痴施。數(shù)據(jù)結(jié)構(gòu)就是原生數(shù)據(jù)或者組合數(shù)據(jù)的混合運用的一種規(guī)則集合擎厢。連接這些數(shù)據(jù),將這些數(shù)據(jù)有機的串聯(lián)在一起辣吃,指針起到非常關(guān)鍵的作用锉矢。經(jīng)常見到初學者說數(shù)據(jù)結(jié)構(gòu)和天書差不多,幾乎看不懂齿尽,建議回爐好好學習指針,說到指針還是存在很多故事灯节,在入門之初有幸遇到一位水平極高的老手帶著循头,基本功扎實的不得了,記得有一次使用指針忘記初始化炎疆,這老手嘆了口氣卡骂,當年我每次用指針錯一次,就被項目經(jīng)理當眾批評一次形入,后來再也不敢不初始化使用了全跨,所以印象才能這么深刻,話說到這里剛?cè)腴T的小白挨多少批評或者鄙視亿遂,是最正常不過的事情了浓若,這對于編程界來說稀松平常。

結(jié)構(gòu)體在項目中用的特別多蛇数,很多初學者覺得結(jié)構(gòu)體都在教材的最后章節(jié)挪钓,覺得不是那么重要。其實結(jié)構(gòu)體在一定層次上決定著軟件的脈絡(luò)框架耳舅。很多高手在設(shè)計模塊的時候碌上,不是急急忙忙的寫代碼,而是先把頭文件里面的結(jié)構(gòu)體設(shè)計出來浦徊,簡單的來說就是把數(shù)據(jù)模型先搞起來馏予。有個數(shù)據(jù)模型代碼實現(xiàn)起來就比較輕松了。面向?qū)ο罄锩骖惖睦献孀诰褪墙Y(jié)構(gòu)體延伸來的盔性。關(guān)于結(jié)構(gòu)體如何賦值霞丧,包含著指針的情況下,如何賦值這些都是常見的初學者經(jīng)常容易掉的坑纯出。枚舉一般用在羅列不同類別蚯妇,存在多個相同功能的實物敷燎,搭配switch使用的很多,在這就不一一列舉了箩言。

函數(shù)的使用

函數(shù)是面向過程編程最基本的單位硬贯,任何C程序的運行都有函數(shù)的身影隐圾,因為程序的入口main就是一個函數(shù)届案,函數(shù)傳值方式,調(diào)用方式(遞歸毕贼,回調(diào))都是函數(shù)內(nèi)在的表現(xiàn)务漩。函數(shù)的里面又可以嵌套別的函數(shù)拄衰,使得程序慢慢變得復雜化。前幾天和一個非計算機專業(yè)的聊天饵骨,談到如何學習函數(shù)翘悉,說到了數(shù)學不好是不是編程不好學。函數(shù)的編程基本因子居触,和數(shù)學里面的函數(shù)有一定的共性妖混,但編程里面的含義引申的層次更多,數(shù)學在一定層面就是提供一個工具或者方法而已轮洋,函數(shù)的設(shè)計里面夾雜著諸多的編程思想制市。

檢驗一個程序員水平的高低可以簡單讓用函數(shù)實現(xiàn)一個相對復雜一些的功能,基本上就能看出編程思想掌握的深淺程度弊予。不妨自己實現(xiàn)一個函數(shù)祥楣,檢驗下自己編程水準,函數(shù)的檢驗是面試里面必不可少的題目汉柒。

一個函數(shù)基本上代表一個小的模塊误褪,多個模塊有機的組合形成一個系統(tǒng)。建議初學者在學習函數(shù)的時候碾褂,不要滿足于會使用函數(shù)振坚,還要讓自己站的層次更高一點。這能決定自己是一個純粹的執(zhí)行者還是未來框架的設(shè)計者斋扰,不要覺得這些東西距離自己很遠渡八,慢慢的積累時間長了,慢慢也就從量變變成質(zhì)變了传货。

對于內(nèi)存和性能有少許的理解

內(nèi)存和性能對于初學者來說屎鳍,可能覺得很遙遠,其實這兩樣東西貫穿整個編碼界问裕,檢驗軟件功能最重要的兩項指標逮壁,軟件占用內(nèi)存多少,運行時間長了會不會讓系統(tǒng)變緩慢粮宛。同時開啟在多個軟件的時候窥淆,你設(shè)計的軟件是不是變得很卡頓卖宠,這些都是大家平常在使用軟件時候經(jīng)常遇見的現(xiàn)象。今天在車上閑聊忧饭,司機說當年的XP運行的多好扛伍,非要升級搞什么windows7或者windows10之類的,把電腦搞的卡的要死词裤。這其實是微軟操作系統(tǒng)設(shè)計理念的一個延伸刺洒,用空間換時間。說的通俗點吼砂,提前把一些常見的軟件加載到內(nèi)存里面逆航,使用的時候流暢度會感覺好一些,理念這么好渔肩,為啥還變得這么卡慢因俐,主要機器配置太低了。微軟這幫大佬認為你機器內(nèi)存和CPU還是相當不錯的周偎,因為現(xiàn)在硬件成本基本上接近白菜價了女揭。在機器配置還不錯的情況下,windows7栏饮,10運行的速度還是很不錯的。透過這些生活常識磷仰,歸結(jié)對編程袍嬉,對編碼的認知程度上,慢慢就會建立起自己的知識體系灶平。

這點在嵌入式設(shè)備上表現(xiàn)的很明顯伺通,一般嵌入式設(shè)備內(nèi)存和cpu配置不是高,內(nèi)存就要省著點用逢享,占用CPU很高的一些函數(shù)盡量少去調(diào)用罐监,避開雷區(qū),這些經(jīng)驗就要靠平時多去積累瞒爬,多去思考弓柱,才會融入自己知識體系,才會慢慢認識到寫代碼其實在編程時候侧但,只占很小的一部分矢空,大部分的時間還是在思考如何讓代碼更加利索,內(nèi)存更少的去使用禀横,cpu占用率低一些屁药。認識到這些時候,層次就不一樣了柏锄,就會越來越覺得設(shè)計思想的重要性了酿箭。

嘮嘮叨叨說了以上四點复亏,可能和里面具體的概念不是很搭邊,主要站在項目的角度上做了一些延伸缭嫡,從項目的角度去認識一些基本的概念缔御,讓初學者在學習的時候,有個大致的認識械巡。在知識層次上面稍微做了一些拉伸刹淌。稍微上了一點高度,滲入了一些編程思想讥耗。希望初學者對此有一個更加深刻一點的認識有勾,不要拘泥于語法的限制,編程語言服務(wù)于編程思想古程。學到了真正的編程思想蔼卡,才叫貨真價實的懂編程。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末挣磨,一起剝皮案震驚了整個濱河市雇逞,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌茁裙,老刑警劉巖塘砸,帶你破解...
    沈念sama閱讀 206,723評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異晤锥,居然都是意外死亡掉蔬,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評論 2 382
  • 文/潘曉璐 我一進店門矾瘾,熙熙樓的掌柜王于貴愁眉苦臉地迎上來女轿,“玉大人,你說我怎么就攤上這事壕翩◎燃#” “怎么了?”我有些...
    開封第一講書人閱讀 152,998評論 0 344
  • 文/不壞的土叔 我叫張陵放妈,是天一觀的道長北救。 經(jīng)常有香客問我,道長芜抒,這世上最難降的妖魔是什么扭倾? 我笑而不...
    開封第一講書人閱讀 55,323評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮挽绩,結(jié)果婚禮上膛壹,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好模聋,可當我...
    茶點故事閱讀 64,355評論 5 374
  • 文/花漫 我一把揭開白布肩民。 她就那樣靜靜地躺著,像睡著了一般链方。 火紅的嫁衣襯著肌膚如雪持痰。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,079評論 1 285
  • 那天祟蚀,我揣著相機與錄音工窍,去河邊找鬼。 笑死前酿,一個胖子當著我的面吹牛患雏,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播罢维,決...
    沈念sama閱讀 38,389評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼淹仑,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了肺孵?” 一聲冷哼從身側(cè)響起匀借,我...
    開封第一講書人閱讀 37,019評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎平窘,沒想到半個月后吓肋,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,519評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡瑰艘,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,971評論 2 325
  • 正文 我和宋清朗相戀三年是鬼,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片磅叛。...
    茶點故事閱讀 38,100評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖萨赁,靈堂內(nèi)的尸體忽然破棺而出弊琴,到底是詐尸還是另有隱情,我是刑警寧澤杖爽,帶...
    沈念sama閱讀 33,738評論 4 324
  • 正文 年R本政府宣布敲董,位于F島的核電站,受9級特大地震影響慰安,放射性物質(zhì)發(fā)生泄漏腋寨。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,293評論 3 307
  • 文/蒙蒙 一化焕、第九天 我趴在偏房一處隱蔽的房頂上張望萄窜。 院中可真熱鬧,春花似錦、人聲如沸查刻。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽穗泵。三九已至普气,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間佃延,已是汗流浹背现诀。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留履肃,地道東北人仔沿。 一個月前我還...
    沈念sama閱讀 45,547評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像榆浓,于是被迫代替她去往敵國和親于未。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,834評論 2 345

推薦閱讀更多精彩內(nèi)容