推薦序
我大學時期,學過FORTRAN、COBOL及Pascal程式語言。當時常常使用FORTRAN 解工程數學或線性代數的問題,利用COBOL產生一些相當實用的報表,及利用撰寫資料結構的習題,因為它有指標(pointer)。可見每一程式語言各有其功能。但Pascal好景不常,C程式語言出現了,由於它是UNIX作業系統使用的程式語言,而且指標功能比Pascal更強,使得Pascal黯然失色。
記得在行政院研考會資訊管理處開始接觸C程式語言,還好以前的程式設計有一點底子,所以很快的進入狀況,當時C的編譯程式,計有Borland的Turbo C及Microsoft的Microsoft C較多人使用,至今Turbo C已不見,取而代之的是Bloodshed Software的Dev-C++。而Microsoft則發展為Visual Studio 2010。由於覺得非常好用,而且powerful,所以便毛遂自薦給東吳大學的電算系(目前的資管系)謝主任志雄,由於他的賞識,從此展開教學與寫書的生涯,一直至今。
數一數已二十幾個年頭了,不變的是,C到目前為止還是很紅,根據TIOBE 2011 四月份的調查,C程式語言的使用率排行榜是第二名,究其原因不外乎簡單易懂,且有很多的程式語言皆是從此語言演變而來的如C++,它是C加上物件導向的程式設計觀念而成的,目前最夯的iPhone程式設計所使用的語言Objective-C,則是C加上SmallTalk。我常告訴學生,畢業就失業這句話是錯的,那是因為您沒有足夠的能量和別人相比,您要選公司,公司也會選人才吧。目前是最好的時機,好好把握,學有一技之長,不怕找不到工作,反過來是公司在找您。
任何人都可以使用C語言來學程式設計,利用它來訓練您的邏輯能力,不要怕指標(pointer),因為它很實用,若沒有它,資料結構有許多的問題是很難利用程式來加以驗證的。學會了也知道如何使用指標,則指標將會是天上那顆最美的星星,千萬不要演變成頭上冒星星,兩種的意境是不一樣的。
有人常問我,如何學習程式語言,我會說,碰到程式有錯誤(bugs),自己除錯(debug),否則您的功力不會累加的,再加上多看及多做題目。學習程式設計是沒有捷徑的,付出愈多時間的人,一定收穫愈多。
很高興中華民國電腦技能基金會,將舉辦程式語言C的初階與高階的認證,這也證實了此基金會對程式語言C的重要性。他們將認證的題目分為除錯與實作,我認為非常合適。因為除錯題旨在訓練您,自己的錯誤,自己除錯。而實作題讓您能獨自完成程式的撰寫。
我很lucky,很久之前已搭上這一班列車,它給我的東西實在太多了,無法在此一一表達,但我相信一句話,遲比都沒有動作來得好(Later is better than never)。
各位朋友趕快來學習C吧,也在此祝福您收穫滿滿。
交通大學資訊工程研究所 博士
輔仁大學資訊管理系所 副教授
蔡明志