“指針”,顧名思義就是某個內存指向某個地址,指針變量是用來存放內存地址的變量,在同一CPU構架下,不僅可以對數據本身,也可以對存儲數據的變量地址進行操作。 指針可以是一維的,也可以是多維的,它是C語言學習中最難啃的一塊骨頭。
芮桃老師在講台上一字一板地講道。大海的左手中指扶了扶透明眼鏡框,對身旁的檸檬說道:“芮老師到底有完沒完,實操才是硬道理,我期待這周三的上機課很久了!”
撫仙湖麵下,色調從淡藍漸變至深墨,會令人感到恐懼、不安、孤獨、黑暗。撫仙湖麵上,伴隨著幾朵氣泡,我帶著潛水裝備上浮。湖麵的另一邊可能不是燦爛千陽,而是無數個自己的映射。我離開了深淵,思維和意識回溯,又全部注入另一具軀體。
“強行將一件事物賦予詩意是愚蠢的。”檸檬諱莫如深地對大海說道,“假使你我身處同一CPU架構下,你我恰似兩個指針,在你我之間會不會有著數不清而看不到邊際的絲線,將你我之對話實現,將你我與周遭萬象聯結?”
幹澀的喉嚨在顫抖,他咽了咽口水,繼續說道:“在這個世界觀裏,不論個體持有唯心主義還是唯物主義,一切都不再如此重要。比如,一個叫檸檬的同學每天都接觸三位固定的同學,那麼高階的生命隻需要分配給檸檬同學三個數據集的內存;檸檬與這三位同學每天進行固定的數據交換,不與檸檬接觸的同學自然就接收不到他的數據。以此為基礎,我們每天早八上課,路上遇到的陌生人不過是係統自動生成的NPC,他們的內核大多存在著以我們所處社會的道德價值觀為藍本映射出的數據。即使我們無意間接觸到了他們,他們也會在禮教的範圍內與我們互動,事實上,就如同自己和自己互動一樣沒什麼差別。那麼,這會是你我所願景的生活嗎?”
“呃…”檸檬方才驟然的情緒變化讓大海沒有多餘的準備,但大海的注意力正巧被吸引了過來。
“你的這個想法正是我最近一直在思考的一個問題。國外一篇科幻小說的主人公為了證明自己所處的是否是模擬世界,以地球為中心向不同方向發射了多艘亞光速探測器,結果是高階生命計算機的內存和算力不足以支持,主人公也隨著係統重啟而消失了。一直以來,光速是目前所發現的自然界物體運動的最大速度。這是否是高階生命防止自己的內存和算力到達擊穿值,防止模擬世界坍縮而精心設定的呢?”大海的興致被檸檬帶動而起,手指卻在不停敲著代碼。
“你這樣說也沒錯。我們每一個人接觸到的信息是有限的,這是客觀事實。而高階生物正是通過這一點,為每一個人分配可接收到的最大數據,而我們每個人在不同時間地點接收到的最大數據會受到不同因子的影響。而與不同個體互動,所獲得的最大數據也是完全不同的。這很可能就是高階生命向我們編輯一個故事,而我們執行這個故事,再而為故事而活。”檸檬回答道,並表示不願意說更多的話語。
下課鈴聲打斷了檸檬,芮桃老師最後說道:“大家看到這個程序題,要求實現單鏈表的初始化,有同學知道該怎麼做嗎?”
大海銳利的雙眼一掃而過那看似空虛的代碼,起身回答道:“(**A)是指針的指針A,換句話說,要使這個變量有意義,需要給(**A)和(*A)都分配上內存空間,他們就像無限號火車,少了某一列車廂都會使車隊分裂混亂。”
芮老師沒有絲毫猶豫,宣布了下課。
“他們,他們也是有生命的對嗎?”,此般疑問在檸檬腦海中回蕩連綿。