當前位置:才華齋>計算機>C語言>

C語言的函式分類

C語言 閱讀(3.29W)

可以說C程式的全部工作都是由各式各樣的函式完成的, 所以也把C語言稱為函式式語言。 由於採用了函式模組式的結構, C語言易於實現結構化程式設計。使程式的層次結構清晰,便於程式的編寫、閱讀、除錯。下面就和小編一起看看C語言的函式分類吧。

C語言的函式分類

在C語言中可從不同的角度對函式分類。

  1. 從函式定義的角度看,函式可分為庫函式和使用者定義函式兩種。

(1)庫函式

由C系統提供,使用者無須定義, 也不必在程式中作型別說明,只需在程式前包含有該函式原型的標頭檔案即可在程式中直接呼叫。在前面各章的例題中反覆用到printf 、 scanf 、 getchar 、putchar、gets、puts、strcat等函式均屬此類。

(2)使用者定義函式

由使用者按需要寫的.函式。對於使用者自定義函式, 不僅要在程式中定義函式本身, 而且在主調函式模組中還必須對該被調函式進行型別說明,然後才能使用。

  2. C語言的函式兼有其它語言中的函式和過程兩種功能,從這個角度看,又可把函式分為有返回值函式和無返回值函式兩種。

(1)有返回值函式

此類函式被呼叫執行完後將向呼叫者返回一個執行結果, 稱為函式返回值。如數學函式即屬於此類函式。 由使用者定義的這種要返回函式值的函式,必須在函式定義和函式說明中明確返回值的型別。

(2)無返回值函式

此類函式用於完成某項特定的處理任務, 執行完成後不向呼叫者返回函式值。這類函式類似於其它語言的過程。 由於函式無須返回值,使用者在定義此類函式時可指定它的返回為“空型別”, 空型別的說明符為“void”。

  3. 從主調函式和被調函式之間資料傳送的角度看又可分為無參函式和有參函式兩種。

(1)無參函式

函式定義、函式說明及函式呼叫中均不帶引數。 主調函式和被調函式之間不進行引數傳送。 此類函式通常用來完成一組指定的功能,可以返回或不返回函式值。

(2)有參函式

也稱為帶參函式。在函式定義及函式說明時都有引數, 稱為形式引數(簡稱為形參)。在函式呼叫時也必須給出引數, 稱為實際引數(簡稱為實參)。 進行函式呼叫時,主調函式將把實參的值傳送給形參,供被調函式使用。

  4. C語言提供了極為豐富的庫函式, 這些庫函式又可從功能角度作以下分類。

(1)字元型別分類函式

用於對字元按ASCII碼分類:字母,數字,控制字元,分隔符,大小寫字母等。

(2)轉換函式

用於字元或字串的轉換;在字元量和各類數字量 (整型, 實型等)之間進行轉換;在大、小寫之間進行轉換。

(3)目錄路徑函式

用於檔案目錄和路徑操作。

(4)診斷函式

用於內部錯誤檢測

(5)圖形函式

用於螢幕管理和各種圖形功能。

(6)輸入輸出函式

用於完成輸入輸出功能。

(7)介面函式

用於與DOS,BIOS和硬體的介面。

(8)字串函式

用於字串操作和處理。

(9)記憶體管理函式

用於記憶體管理。

(10)數學函式

用於數學函式計算。

(11)日期和時間函式

用於日期,時間轉換操作。

(12)程序控制函式

用於程序管理和控制。

(13)其它函式

用於其它各種功能。

以上各類函式不僅數量多,而且有的還需要硬體知識才會使用,因此要想全部掌握則需要一個較長的學習過程。 應首先掌握一些最基本、 最常用的函式,再逐步深入。