函數概述
庫函數和用戶定義函數 有返回值函數和無返回值函數 有參函數和無參函數
函數的定義
函數的調用
實參的求值順序爲自右至左
函數的返回值 return void
函數的參數
形參 實參 值傳遞 單向 實參將數據傳遞給形參 形參的一切改變都不影響實參的值
函數的嵌套調用
C中函數不允許嵌套定義 但是函數可以嵌套調用
函數的遞歸調用
是指一個函數在它的函數體內調用它自身
局部變量與全局變量
前者是內部變量 後者是函數外定義的變量 他不屬於任意一個函數 只屬於源程序文件 有效範圍是開始的位置到源文件的結束
變量的存儲類別
分爲 靜態和動態存儲
靜態存儲的變量包括 全局變量(外部變量)
用static聲明的局部變量
動態存儲類別
函數形參
自動變量
函數調用時的現場保護和返回地址
register變量 如果不希望文件中的外部變量被其他文件共享 可以用關鍵字static對定義的外部變量加以聲明 這樣它就只限於在文件中應用 而不能被其他文件應用
內部函數於外部函數
static 類型標識符 函數名(形參表列)
extern 類型標識符 函數名(形參表列)