首頁 現(xiàn)實

程序媛養(yǎng)成計劃

第四十六章 指針(一)

程序媛養(yǎng)成計劃 任煦之秋 2131 2020-05-19 21:57:59

  「只有上帝知道那段代碼是什么意思,因為沒有注釋,半個月后程序員自己也不知道當(dāng)初寫的代碼是用來干嘛的了。」

  六叔叔笑了笑,然后接著說道:「這句話還在我剛學(xué)習(xí)編程的時候你老爹就給我說過,當(dāng)時我不以為然,甚至有些嗤之以鼻。

  我覺得只有那些凡人才會犯這種低級錯誤,不曾想在我度過國慶節(jié)再回去工作爹時候,已經(jīng)全然忘記節(jié)前寫的代碼是用來干什么的了。

  所以關(guān)于這一點,我還是很贊同你老爹的說法的,雖然到現(xiàn)在我都不怎么喜歡寫注釋?!?p>  果然,有其父必有其子,小弦子在說「你們這些凡人」的時候無論語氣口吻,還是神情舉止都和六叔叔是一模一樣。那種不把所有人放在眼里,睥睨天下的氣勢讓人真的恨不得上前就是兩鞋底拍臉上。

  既然連六叔叔都這么說了,那以后還是寫些注釋吧!

  剩下的一些時間,老爹讓我和小弦子自己安排,我們休息了一會兒,就開始著手寫新的推箱子程序。

  按照老爹的設(shè)計概要文檔,因為思路清晰,實施起來效率的確是提高了不少。在小弦子離開的時候,除去和文件讀寫相關(guān)的內(nèi)容,幾乎已經(jīng)完成了百分之八十。

  送走了小弦子一家之后,我抱著薯片坐在沙發(fā)上陪爺爺奶奶看電視,老媽則是在一旁整理她今天和小鹿阿姨逛商場的戰(zhàn)利品,分別派送到我們手上。

  爺爺奶奶和我都有,當(dāng)然老媽也不可能忘了她自己,唯獨只有老爹慘兮兮的,什么都沒有。

  「唉,這是個什么世道哦!」

  老爹幽怨地看了老媽一眼,搖頭嘆息道。

  「前年不是給你買了5套格子衫配休閑褲噠嘛?而且你辛苦賺錢的目的不就是讓我們過得更好么?」

  老媽捂著嘴笑道。

  「好了好了,這是你半個月前收藏的無線耳機,今天去商場逛的時候看到了,幫你買回來了。」

  老媽從從她手提包里拿出一個精致的小盒子,然后遞給了老爹。

  「謝謝媳婦兒!」

  老爹看到盒子,原本幽怨地神情一掃而光,滿面歡喜地從老媽手上接過盒子,而且居然還當(dāng)著大家的面親了老媽的臉!

  簡直是太過分了,全然沒有顧及到我一個小孩子還在呢!

  老媽的臉居然一下子紅了,然后提著袋子落荒而逃,躲進了他們的臥室。

  吃了晚飯后,按照咱們家多年的傳統(tǒng),又到了游戲時間,于是我和老爹邀請六叔叔一家開五黑。

  六叔叔毫無意外地依舊選了他那近萬把的寒冰射手,當(dāng)然,為了降低游戲難度,六叔叔和老爹都是用的小號。不然匹配到的對手根本就不是我們?nèi)齻€大人和兩個小孩兒能夠匹敵的。

  既然六叔叔玩兒ADC,那么小鹿阿姨自然就是輔助咯。

  如果六叔叔不跟我們一起玩兒,小弦子其實也喜歡玩兒ADC,但是現(xiàn)在只能遠走上路,玩兒起了小提莫。

  「老爹老爹,一會兒你可要多幫幫我!我怕打不贏對面的疾風(fēng)劍豪。」

  「沒事,你德瑪對戰(zhàn)劍豪還是很好打的,等到老爹德邦三級了就來幫你抓?!?p>  其實老爹年輕的時候除了打野,其他位置都可以打,但是后來為了將就我們,只能去打野了。

  快樂的時光總過得很快,沒玩兒幾把就到了該睡覺的時間了。雖然基本上都是輸,但還是很開心。

  第二天,小弦子如約而至。

  「孩子們,今天我們就要學(xué)習(xí)C語言最精髓的部分——指針。這個地方可以說算得上一道分水嶺,一旦越過去,C語言功底將會發(fā)生質(zhì)的飛躍?!?p>  「那要是越不過去呢?」

  「那就永遠停留在菜鳥級別!有很多人哪怕在參加工作了以后,都沒有將指針的用法融匯貫通。所以啊,你們要打起精神來,好好聽這部分的內(nèi)容。

  好了,內(nèi)容正式開始!」

  聞言后,我和小弦子都挺直了腰桿,畢竟這還是老爹第一次如此鄭重其事地強調(diào)。

  「假設(shè)你們倆在學(xué)校闖禍了,老師通知我到學(xué)校來,但是因為老爹不知道你們的教室在哪兒,于是我就問了你們學(xué)校的老師,被告知你們在五樓。

  于是老爹來到五樓,通過教室門口的『四年級二班』標(biāo)識牌找到了你們教室。但是不巧的是,你們倆已經(jīng)被班主任叫到了辦公室。正在上課的任課老師擔(dān)心我找不到,告訴我辦公室在502。

  最終我通過502找到了辦公室,看到了正在接收批評教育的你們。

  在這個案例中,我們要找到教室或者辦公室只需要知道標(biāo)識牌或者編號中的一個,就能夠找到那個房間,這個沒有錯吧?」

  「嗯……」

  「其實啊,在C語言中,一個房間就相當(dāng)于我們內(nèi)存的一個字節(jié),如果我們要對內(nèi)存的某個字節(jié)進行訪問,同樣也可以如同案例中的方式,要么通過標(biāo)識牌,要么通過編號。

  而內(nèi)存字節(jié)的標(biāo)識牌就是我們的變量名,編號,自然就是我們的內(nèi)存地址了。

  在C語言中,我們把一個變量的地址成為該變量的指針,換而言之,指針代表的就是一個地址,這個地址指向內(nèi)存中的某個變量?!?p>  「指針原來就是地址啊,也沒有什么奇特的呀,為什么老爹之前一提到指針就是一副諱莫如深的樣子?」

  聽到老爹的講述后,我并沒有意識到指針有什么特別之處。

  「指針的精妙,只能用只可意會不可言傳幾個字來形容,這個需要你們在實際使用到的時候才能體會到??茨銈円桓迸d致缺缺的樣子,那我現(xiàn)在就讓你們開開眼界,讓你們體會到指針強大之處。

  請聽題:請編寫一個swap函數(shù),實現(xiàn)對兩個變量的值進行交換。也就是說,我有兩個變量:

  int a = 3;

  int b = 4;

  在調(diào)用了swap之后,a的值變成了4,b的值變成了3?!?p>  「這個有什么難的嘛,這樣寫不就好了么:

  void swap(int x, int y)

  {

  a = a + b;

  b = a - b;

  a = a - b;

  }

  swap(a,b);

  不就完了么?」

  我不以為意道。

  「是么?真的是這樣么?」

  老爹臉上浮現(xiàn)出一抹意味深長的笑容,這讓我心中一凸,因為上次看到這種笑容還是在學(xué)習(xí)break關(guān)鍵字時。

  那時我無比膨脹地認(rèn)為老爹所說的break結(jié)束離它最近的for指的代碼距離上的遠近,然而錯的一塌糊涂!

按 “鍵盤左鍵←” 返回上一章  按 “鍵盤右鍵→” 進入下一章  按 “空格鍵” 向下滾動
目錄
目錄
設(shè)置
設(shè)置
書架
加入書架
書頁
返回書頁
指南