發信人: ax.bbs@bbs.ee.nthu.edu.tw. (athena), 信區: test
標  題: 星星流講座 0003
發信站: ☆清華電機☆ (Tue May  2 21:12:12 1995)
轉信站: star

星星流講座 0003         C 語言教室

第 1 講 之 3            Newbies Look Here
                        Topic: 新手的背景知識

在寫作 C 語言程式的時候,我們通常使用 .c 作為副檔名,也就是
程式檔的檔名通常取成像 abcd.c 這種形式。

C 語言程式中有所謂的標頭檔,它們的副檔名通常是 .h。標頭檔的
作用以後再詳述。

cc 或 gcc 會自動地把副檔名為 .c 的檔案當成是 C 語言程式檔,
編譯出來的目的碼通常被命名為副檔名為 .o 的檔案,以後會很多例
子展示這種情形。

當你的程式發生嚴重的錯誤時,在 UNIX 系統下會出現這個訊息:

Segmentation Fault, core dumped.

這個訊息就相當於你在 PC 上直接當掉的意思是一樣的,只是因為
UNIX 這個作業系統比較先進,所以它會把當時你程式的執行情形存
成一個檔案,這個檔案的檔名就叫 core。無論如何,當你的程式會
發生 core dump 的情形,就表示你的程式內還有嚴重的錯誤,必須
加以修正。

我們在寫作程式的時候,應該考慮的基本因素有下列幾項:

1. 正確性:

        敬愛的小平同志曾經說過:「管牠黑貓白貓,會拿耗子的就
        是好貓。」不管你的程式技巧多麼純熟,格調多麼優雅,不
        能正常工作的程式就不能算是好程式,甚至連稱為程式的資
        格都沒有。寫程式的第一要務就是求程式的正確性。

2. 可維護性:

        程式除了能正確地工作之外,還要能讓人看的懂才叫好程式
        ,否則只是耍耍花槍不入流的東西罷了。程式要如何寫才叫
        乾淨漂亮,這我們以後會慢慢地向各位介紹。

3. 可擴充性及可重用性:

        有一個很有名的公式:程式=資料結構+演算法。資料結構
        就是儲存資料的方法,演算法就是處理資料的方法,而我們
        寫程式就是要設計這兩種方法並把它們用程式語言實現出來
        。當你在設計這兩種方法的時候,必須考慮你現在和未來可
        能面臨的需求和狀況,這樣才不會遇上改動一個功能就必須
        重寫整個程式的慘劇。

4. 效率:

        程式的效率可以從兩個方面來看:執行的效率和開發的效率
        。執行的效率說的通俗一些就是你的程式跑的快或慢,開發
        的效率就是你的程式寫作時間是長或短。良好的程式設計師
        在時間狀況允許之下應該努力追求程式的執行效率。

5. 容錯能力:

        程式就像一部機器,我們給定一定的輸入,得到我們想要的
        輸出。但是一個好的程式必須要有處理錯誤輸入的能力,以
        避免產生錯誤的輸出。

6. 介面:

        介面就是程式和使用程式的人溝通的方式。程式最好盡量使
        使用者易於與程式溝通,這樣程式才能稱的上是好用。

以上是寫作程式時所應該注意的大原則,細部的情形我們以後會詳細
地探討。