聲明:本文是作者讀完http://www.aqee.net/proof-that-linux-is-always-number-1/這篇文章后的隨想。
凌晨2點,電腦前,程序員還在不斷修改着自己的代碼。像所有操心的父母為自己的女兒設計着未來。
#include <stdio.h> int main () { int linux = 0; printf("%d\n", linux); return 0; }
那時,這位父親還不知道linux是誰,只知道他一無所有。他只是自己找來的臨時工。
父親安排好這一切,等着明天再告訴女兒。
女兒名叫“C語嫣“。所有的父母都認為自己的孩子才是最優秀的,這位父親也不例外。父親也喜歡向其他人炫耀自己的女兒,總是說自己的女兒多么的聰明能干。“C語嫣”確實也沒有辜負父親的期望。她總是能用很少的時間就能把事情做好,以致還經常引來其他人的妒忌。話說回來,父親這么誇自己的女兒,不是所有人都會服氣。有時他也會跟其他做父母的爭得面紅耳赤。
第二天,父親找來了女兒。
女兒也第一次見到了linux。以前,因為工作需要,程序員也會介紹一些人給女兒認識。在程序員看來,這次和往常沒有差別。
對於女兒,這一次卻不同尋常。
只是一眼,便覺得眼前這位男子的前世與自己的今生有着千絲萬縷的聯系。他很像經常出現在自己夢里的一個人。
程序員從剛才的思緒中清醒過來。看了看屏幕上的時間,兩點五分,剛才又走神了。他飛快地在終端下敲下程序的編譯指令:
$ gcc -o test.out test.c
編譯的結果卻出乎意料:
test.c: In function ‘main’:
test.c:5:9: error: expected identifier or ‘(’ before numeric constant
不可能啊,這種簡單的程序自己不知寫過多少遍了,怎么會出錯呢?
程序員的思緒再次凌亂了。。。
女兒第一次違背了父親的意願。
父親第一次對女兒感到失望。
這次女兒太不正常了,不會有什么事吧?出於對女兒的關心,父親不得不出此下策。
女兒有寫日記的習慣。父親第一次偷看了女兒的日記。
程序員再次從恍惚中清醒過來,他這次要看個究竟,看看到底發生了什么:
$ gcc test.c -E
輸出的結果還是 嚇了他一跳:
......
int main ()
{
int 1 = 0;
printf("%d\n", 1);
return 0;
}
看完女兒的日記,一切都明白了。原來自己覺得一無是處的linux早已存在於女兒的心里。父女兩人對linux的看法產生了沖突。對女兒來說,linux意味着一切。linux在她心中的地位是沒有人能夠改變的。父親也不行。
父親畢竟還是開明的,這次他沒有為難女兒。父親沒有再把自己對linux的看法強加給女兒。
這次,女兒高興地照父親說的去做了。父親也看到了想要的結果。
剛才的預處理結果着實讓程序員吃驚不小。但程序員不會跟自己的程序過不去,他迅速地刪掉了對變量linux賦值的那行代碼:
#include <stdio.h> int main () { printf("%d\n", linux); return 0; }
再次編譯運行:
$ gcc -o test.out test.c && ./test.out
1
程序員這才恍然大悟,原來在C語言的世界里linux永遠都是number 1 。