C語言函數及其知識點_第1頁
C語言函數及其知識點_第2頁
C語言函數及其知識點_第3頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、C語言函數(Function)及其知識點紹興文理學院沈紅衛c語言是函數的語言。這話的內涵很豐富,個人以為,可從以下幾個方面去理解和把握函數這部分內容,領會此話的意義。一、小函數大程序意思是說,一個C語言程序可以很大,但是通常是由多個函數組成的。從這個意義上說,函數往往就比較短小。一個程序需要由幾個函數來實現,這個取決于你對C語言的掌握程度和領悟能力,沒有硬性規定,以方便編程、方便調試、方便升級為原則。一個程序分解成幾個函數,有利于快速調試程序,也有利于提高程序代碼的利用率。因為函數是可以多次被調用的,調用次數和調用場合沒有限制。除main函數以外,任何一個函數都可以調用另外一個函數。不要指望一

2、個函數解決程序所有問題。每個函數應該做自己最應該做的事情,即相對獨立的功能。二、main函數及其作用C語言程序,不管多大,還是多小,永遠只能有一個而且只能有一個main函數。main函數可以放在程序的任何一個地方,可以在程序首部,也可以在程序中間,也可以在程序尾部。C語言程序,不管main函數在程序的什么地方,一定是從main函數開始執行程序,從main函數結束程序。所以,main函數又被稱為主函數,即主心骨、主要的意思。main函數通常定義成void類型,形式參數也通常為void類型。三、函數的種類函數通常分為庫函數(標準函數)和自定義函數(用戶函數)兩大類。庫函數是指由C語言本身提供的,可

3、供直接調用以實現特定功能的函數,例如:求正弦函數(sin()、求平方根函數(sqrt()、輸出函數(printf()等等。自定義函數是指由編程者自己開發、編寫的、以實現一定功能的函數。所謂編寫C程序(開發C程序),很大程度上,就是編寫若干個自定義函數(包括main函數)。所以可以這樣說,不會寫函數,就不會寫C程序。四、函數的定義、調用和說明自定義函數(用戶函數)必然涉及到三個方面:這個函數干啥用以及怎么干、調用這個函數、調用前必要的準備,對應三個C語言中的概念,分別是:函數定義、函數調用、函數說明。函數定義最為關鍵,因為只有定義了一個函數才能使用這個函數啊。定義的語法詳見教材第7章。簡單地歸納

4、定義的語法,大致如下:函數類型函數名(函數的參數及其各自的類型)函數體(即函數的具體程序,由若干條語句組成)注意上述定義的格式。函數類型:即函數值的類型;函數名:可隨意取,最好顧名知義,必須符合C有關標識符(identfier)的三條規則;函數的參數:又叫形式參數,可以是一個,也可以是多個,也可以是沒有,如果沒有參數,規范的定義應用void類型表示。C語言中的所有函數都是相對獨立的,即不能在一個函數內定義另外一個函數。函數調用的語法很簡單,就是:函數名(實際參數),可以用在任何一個表達式或語句中。函數說明是函數調用前必須做的一項準備工作。函數說明又叫函數聲明,其語法是:“函數類型函數名(函數參

5、數及其各自的類型);。注意,函數聲明只是一條簡單的語句,所以,千萬別忘記“;庫函數在調用前也必須先聲明,聲明的語法是:#include,或者#include該函數對應的頭文件兩者唯一的區別在于,后者從多路徑尋找該頭文件并把它包含到用戶所在的程序中,而前者只尋找C系統文件所在的路徑。所以,可以通俗的理解為,后者比前者更保險就可以了。五、函數內的變量及其作用范圍凡是函數內定義的變量,均為局部變量,只在該函數內起作用。因此,不同函數內定義的變量不必擔心會發生同名沖突、打架的現象。函數內定義的變量通常為動態變量,與函數同存亡。即:該函數被調用時,這些變量就被啟用,該函數結束,這些變量自動消亡。在任何函數外定義的變量,叫全局變量,它對所有函數都起作用,可以為所有函數所用,函數內部不要再定義同名變量。全局變量的通常用來在函數之間傳遞數據,因為每一個C函數只能有一個值,如果要傳遞的值不止一個,全局變量是解決這個問題的一種辦法。六、return語句return只能用在函數內,作用有兩個:函數到此結束;函數的值通過該語句往外傳遞。其使用語法只有兩種

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論