文/蔡翔宇
目前,常見的程序語言相對較多,但是大多數程序都是由C 語言編寫而成,該種算法主要是通過函數的方法來實現目標設計。一般情況下,大多數的C 語言程序都是由較多的函數構建而成,由此可見,在進行C 語言程序編寫的過程中,函數的應用十分重要。但是,對于需要C 語言的新手而言,在進行函數編寫的過程中,經常會出現無從下手的問題,這給程序編寫人員帶來了極大的困擾。事實上,無論目標程序是何種的復雜,只要將實現目標的若干個小函數放置于主函數中即可,但是由于對函數編寫方法認識不清,進而使得程序編寫人員的編寫效率嚴重下降。針對此問題,本次研究主要從函數的基本結構和設計過程出發,對C 語言中常見的無返回值函數、單返回值函數以及多返回值函數的編寫方法進行研究,為C 語言的進一步推廣和使用奠定基礎。
在C語言中,其函數的結構相對較為簡單,主要由函數的函數頭以及函數體構建而成。一般情況下,在應用C 語言時,編寫的第一行代碼即為函數的函數頭,第一行中花括號中的內容即為函數體。同時,在進行語言設計的過程中,也需要對函數的基本類型進行定義,所謂的函數類型主要指的是定義的函數返回數值的類型,如果定義的函數并沒有返回值,該種函數就可以稱之為無返回值函數,該種函數的類型可以定義為“void”。每個函數都有自己的函數名,該函數名主要是由設計人員自己定義,一般情況下,函數名只要做到見名知意即可。函數名的后方也存在一個小括號,該括號的內容主要是形式參數,每一個形式參數都有屬于自己的函數類型,因此,需要對這些形式參數分別進行定義。對于函數體而言,其與主函數大體類型,都是由實現目標的基本算法所構成,根據設計目標,分別使用順序、選擇、循環等算法即可實現函數體的設計。通過對C語言中的函數結構進行深入分析可以發現,只要對函數結構中的函數頭進行明確的設計,就可以降低整個函數的設計難度。
在C 語言中進行函數設計時,只需要進行兩步的設計工作,即可實現目標功能。首先,需要對函數頭進行明確的設計,必須明確設計函數中哪些參數屬于已知的,也需要明確這些已知量的數據類型,進而將這些變量作為函數頭中的形參,同時,也必須明確函數中哪些量是未知的,并確定這些未知量的數據類型;其次,根據目標需求對函數體進行詳細的編寫即可。
無返回值函數是C 語言中最常見的一種函數類型,該種函數的主要功能是調用其它類型的函數,一般情況下,可以將該種函數定義為“void”,同時,在應用該種函數的過程中,并不需要在函數體中編寫“return”,該種函數的輸出具有三角形結構,在使用該種函數的過程中,需要明確三角形結構中的行數,該行數也屬于函數的已知量,其數據類型屬于整型,同時,該行數也屬于函數結構中的形參。
對于C 語言而言,其函數的類型與函數返回值的類型相同,對于單返回值函數而言,在應用的過程中需要使用“return”語句將得到的目標數值返回到主函數中,一般情況下,應用“return”語句只能實現單數值的返回。例如,使用單返回函數編寫下式中ex的近似值時,需要首先指導該函數中x 的具體數值,才能進行進一步的計算,因此,x 就屬于一個已知量,計算結果之后得到的數值有很大可能不是整數,而是無限不循環小數,因此,計算結果的數據類型為浮點類型,該函數也就屬于浮點類型的函數,同時,x 的數值也有可能不是整數,有很大可能是小數,因此,可以說該函數的形參也是浮點類型。

與無返回值的函數和單返回值的函數相比,多返回值函數更為復雜,由于在應用“return”語句的過程中,每次只能返回一個數據數值,而多返回值函數中的返回值相對較多,為了實現該功能,目前常見的方法主要有兩種,首先可以設置多個指針變量,通過使用間接訪問的方式實現數據的返回;其次,可以在函數中設置一個指針變量,利用數組的方式實現多數據的返回。
2.3.1 通過多個指針變量返回多值
在使用該種方法時,需要對被調用的函數進行聲明,具體的語句為:void fun(形參,類型1,類型2……類型n),這種方法就可以在主函數中定義多個變量,然后返回變量的數值,該函數結構中的指針指向的是函數中的未知變量,同時,在應用該種方法的過程中可以通過間接訪問的方法對函數中的變量值進行修改。通過對該種方法進行分析可以發現,本方法中的已知量和未知量都是函數的形參,但是需要在應用該方法時對指針的類型進行定義。由于在返回數值的過程中并不需要使用“return”語句,因此,可以將該種函數的類型定義為“void”。
2.3.2 通過一個指針變量返回多值
在使用該種方法時,也需要對被調用的函數進行聲明,具體的語句為:void fun(形參,類型n),該種方法主要是在主函數中設定一個數組,數組中包含有多種數據的返回值,只需要在函數中定義一個指針,并將其指向該數組,即可實現數組內相關數據的返回,同時,在修改函數的過程中,只需要對數組內的元素進行修改即可,但是,在應用該方法的過程中,數組中的數據并不保持類型一致。
通過上文分析可以發現,C 語言是最常見、最常用的一種編程語言,在應用該種語言的過程中,函數的定義十分重要,函數定義完成,目標功能的實現就可以事半功倍。其中,常見的函數可以分為三種類型,分別是無返回值函數、單返回值函數以及多返回值函數,三種類型的函數編寫方法存在一定的差別,在使用的過程中需要準確的把握每種函數類型的編寫方法。