c函數

數學名詞

“函數”是從英文function翻譯過來的,其實,function在英文中的意思即是“函數”,也是“功能”。c函數一般包括字元庫函數,數學函數,目錄函數,進程函數,診斷函數,操作函數等。

從本質意義上來說,函數就是用來完成一定功能的。這樣對函數的概念就很好理解了,所謂函數名就是給該功能起個名字,如果該功能是用來實現數學運算的,就是數學函數。

分類


庫函數
c函數庫自帶的函數
--- 主函數--
int main() // 主函數
--- -數學函數 在math.h--
double sin(double x) //求正弦函數
double fabs(double x) //求絕對值函數
----文件型函數 ---
int feof(FILE *p) //是否文件末尾函數
void rewind(FILE *p) //文件定首位函數
long int ftell(FILE *p)//文件指針位置函數
FILE *fopen( "文件名稱","文件打開方式") //打開文件函數
fclose(FILE *p) //文件關閉函數
int fscanf(FILE *P,"格式字元串",類型 類型名稱) //格式化讀函數 將數據從文件中讀取到類型名稱中
int fprintf(FILE *p,"格式字元串",類型 類型名稱) //格式化寫函數 將數據從出入框中讀取到文件中
int fputc(FILE *p, 類型 類型名稱) //將字元串寫到文件中
int fgetc(FILE *p) // 將數據從文件中寫到字元中
--字元函數---
int putchar(int c)//將字元串輸入到控制台上
int getchar()//字元寫函數
--輸入輸出函數--
int printf("格式輸出字元串",類型參數名);
int scanf("格式輸入字元串",類型參數名地址);
---空間函數--
void *malloc(size_t size) //申請空間函數
void *calloc(size_t size,size_t nblocks) //申請空間函數,並初始化為0
void free(類型) //釋放空間函數
自定義函數

格式


c函數
c函數
返回值類型 函數名(參數列表,....){
return [變數名]; // 是否需要寫變數名取決於返回類型
}

調用


一般形式

函數調用的一般形式為
函數名(實參表列);
如果是調用無參函數,則"實參表列"可以沒有,但括弧不能省略。如果實參表列包含多個實參,則個參數間用逗號隔開。實參與形參的個數應相等,類型應一致。實參與形參按順序對應,一一傳遞數據。但應說明,如果實參表列包括多個實參,對實參求值的順序並不是確定的,有的系統按自左至右順序求實參的值,有的系統則按自右至左順序

方式

按函數在程序中出現的位置來分,可以有以下三種函數調用方式:
函數語句
把函數調用作為一個語句。
printstar();
這時不要求函數帶回值,只要求函數完成一定的操作。
函數表達式
函數出現在一個表達式中,這種表達式稱為函數表達式。這時要求函數帶回一個確定的值以參加表達式的運算。
函數參數
函數調用作為一個函數的參數,實質上也是函數表達式形式調用的一種,因為函數的參數本來就要求是表達式形式。