c語(yǔ)言頭函數(shù)是什么 c語(yǔ)言函數(shù)頭包括哪些

什么是C語(yǔ)言函數(shù),簡(jiǎn)單明了讓你知道

函數(shù)是一組一起執(zhí)行一個(gè)任務(wù)的語(yǔ)句。每個(gè) C 程序都至少有一個(gè)函數(shù),即主函數(shù) main() ,所有簡(jiǎn)單的程序都可以定義其他額外的函數(shù)。

專業(yè)成都網(wǎng)站建設(shè)公司,做排名好的好網(wǎng)站,排在同行前面,為您帶來(lái)客戶和效益!創(chuàng)新互聯(lián)為您提供成都網(wǎng)站建設(shè),五站合一網(wǎng)站設(shè)計(jì)制作,服務(wù)好的網(wǎng)站設(shè)計(jì)公司,網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站設(shè)計(jì)負(fù)責(zé)任的成都網(wǎng)站制作公司!

您可以把代碼劃分到不同的函數(shù)中。如何劃分代碼到不同的函數(shù)中是由您來(lái)決定的,但在邏輯上,劃分通常是根據(jù)每個(gè)函數(shù)執(zhí)行一個(gè)特定的任務(wù)來(lái)進(jìn)行的。

C 標(biāo)準(zhǔn)庫(kù)提供了大量的程序可以調(diào)用的內(nèi)置函數(shù)。例如,函數(shù) strcat() 用來(lái)連接兩個(gè)字符串,函數(shù) memcpy() 用來(lái)復(fù)制內(nèi)存到另一個(gè)位置。

函數(shù)還有很多叫法,比如方法、子例程或程序,等等。

C 語(yǔ)言中的函數(shù)定義的一般形式如下:

在 C 語(yǔ)言中,函數(shù)由一個(gè)函數(shù)頭和一個(gè)函數(shù)主體組成。下面列出一個(gè)函數(shù)的所有組成部分:

以下是 max() 函數(shù)的源代碼。該函數(shù)有兩個(gè)參數(shù) num1 和 num2,會(huì)返回這兩個(gè)數(shù)中較大的那個(gè)數(shù):

創(chuàng)建 C 函數(shù)時(shí),會(huì)定義函數(shù)做什么,然后通過(guò)調(diào)用函數(shù)來(lái)完成已定義的任務(wù)。

當(dāng)程序調(diào)用函數(shù)時(shí),程序控制權(quán)會(huì)轉(zhuǎn)移給被調(diào)用的函數(shù)。被調(diào)用的函數(shù)執(zhí)行已定義的任務(wù),當(dāng)函數(shù)的返回語(yǔ)句被執(zhí)行時(shí),或到達(dá)函數(shù)的結(jié)束括號(hào)時(shí),會(huì)把程序控制權(quán)交還給主程序。

調(diào)用函數(shù)時(shí),傳遞所需參數(shù),如果函數(shù)返回一個(gè)值,則可以存儲(chǔ)返回值。例如:

如上把 max() 函數(shù)和 main() 函數(shù)放一塊,編譯源代碼。當(dāng)運(yùn)行最后的可執(zhí)行文件時(shí),會(huì)產(chǎn)生下列結(jié)果:

形式參數(shù)就像函數(shù)內(nèi)的其他局部變量,在進(jìn)入函數(shù)時(shí)被創(chuàng)建,退出函數(shù)時(shí)被銷毀。

當(dāng)調(diào)用函數(shù)時(shí),有兩種向函數(shù)傳遞參數(shù)的方式:

默認(rèn)情況下,C 使用 傳值調(diào)用 來(lái)傳遞參數(shù)。一般來(lái)說(shuō),這意味著函數(shù)內(nèi)的代碼不能改變用于調(diào)用函數(shù)的實(shí)際參數(shù)。

C語(yǔ)言的頭函數(shù)有什么作用?包括了什么東西在里面?

頭函數(shù)在預(yù)處理里面,也就是在里面包含了很多的函數(shù)原型以及定義。

比如stdio.h中就包含printf,scanf等等函數(shù)。

不包含會(huì)報(bào)警告。

C語(yǔ)言中的" 函數(shù) 頭文件 和 返回值"。這三種定義是什么?怎么通俗的去理解呢?

C語(yǔ)言

函數(shù):C語(yǔ)言里執(zhí)行的就是函數(shù),函數(shù)里有很多執(zhí)行語(yǔ)句,這個(gè)函數(shù)并不是數(shù)學(xué)里面的函數(shù),可以理解成一個(gè)容器,這個(gè)容器里有很多可以執(zhí)行的語(yǔ)句。C語(yǔ)言從main函數(shù)開(kāi)始執(zhí)行。

頭文件:就是寫(xiě)在開(kāi)頭用#include寫(xiě)的語(yǔ)句,如

#includestdio.h

#includemath.h

#includestring.h

里面的英文就是“庫(kù)函數(shù)”,函數(shù)里的執(zhí)行語(yǔ)句都是需要從庫(kù)函數(shù)里調(diào)用,這個(gè)調(diào)用行為不用咱們管。比如:printf函數(shù)、scanf函數(shù)就需要頭文件包含stdio.h這個(gè)庫(kù)函數(shù)。

pow(求冪函數(shù))就需要頭文件包含math.h。

返回值:就是一個(gè)函數(shù)返回的值,任何一個(gè)沒(méi)有定義成void型的函數(shù)都有返回值,定義void型的函數(shù)沒(méi)有返回值。如:

int hanshu()

{

return 1;

}

這個(gè)hanshu函數(shù)的返回值就是1。

如果再有語(yǔ)句,如下:

int a;

a=hanshu();

那么a的值就是1

本人純?cè)瓌?chuàng),拒絕復(fù)制。如有疑問(wèn)請(qǐng)您追問(wèn),滿意的話記得采納哦~~~

c語(yǔ)言的函數(shù)頭

在一個(gè)函數(shù)定義中,函數(shù)體之前的所有部分稱為函數(shù)頭,它給出了該函數(shù)的返回類型、每個(gè)參數(shù)的次序和類型等函數(shù)原型信息,所以當(dāng)沒(méi)有專門給出函數(shù)原型說(shuō)明語(yǔ)句時(shí),系統(tǒng)就從函數(shù)頭中獲取函數(shù)原型信息。

一個(gè)函數(shù)的原型語(yǔ)句就是其函數(shù)頭的一個(gè)拷貝,當(dāng)然要在最后加上語(yǔ)句接上結(jié)束符分號(hào)。函數(shù)原型語(yǔ)句與函數(shù)頭也有細(xì)微的差別,在函數(shù)原型語(yǔ)句中,其參數(shù)表中的每個(gè)參數(shù)允許只保留參數(shù)類型,而省略參數(shù)名,并且若使用參數(shù)名也允許與函數(shù)頭中對(duì)應(yīng)的參數(shù)名不同。

全文如下:

一)、定義格式

類型名 函數(shù)名 ([參數(shù)表]) 函數(shù)體

類型名為系統(tǒng)或用戶已定義的一種數(shù)據(jù)類型,它是函數(shù)執(zhí)行過(guò)程中通過(guò)return語(yǔ)句要求返回的值的類型,又稱為該函數(shù)的類型。當(dāng)一個(gè)函數(shù)不需要通過(guò)return語(yǔ)句返回一個(gè)值時(shí),稱為無(wú)返回值函數(shù)或無(wú)類型函數(shù),此時(shí)需要使用保留字void作為類型名。當(dāng)類型名為int時(shí),可以省略不寫(xiě),但為了清楚起見(jiàn),還是寫(xiě)明為好。

函數(shù)名是用戶為函數(shù)所起的名字,它是一個(gè)標(biāo)識(shí)符,應(yīng)符合C++標(biāo)識(shí)符的一般命名規(guī)則,用戶通過(guò)使用這個(gè)函數(shù)名和實(shí)參表可以調(diào)用該函數(shù)。

參數(shù)表又稱形式參數(shù)表,它包含有任意多個(gè)(含0個(gè),即沒(méi)有)參數(shù)說(shuō)明項(xiàng),當(dāng)多于一個(gè)時(shí)其前后兩個(gè)參數(shù)說(shuō)明項(xiàng)之間必須用逗號(hào)分開(kāi)。每個(gè)參數(shù)說(shuō)明項(xiàng)由一種已定義的數(shù)據(jù)類型和一個(gè)變量標(biāo)識(shí)符組成,該變量標(biāo)識(shí)符成為該函數(shù)的形式參數(shù),簡(jiǎn)稱形參,形參前面給出的數(shù)據(jù)類型稱為該形參的類型。一個(gè)函數(shù)定義中的參數(shù)表可以被省略,表明該函數(shù)為無(wú)參函數(shù),若參數(shù)表用void取代,則也表明是無(wú)參函數(shù),若參數(shù)表不為空,同時(shí)又不是保留字void,則稱為帶參函數(shù)。

函數(shù)體是一條復(fù)合語(yǔ)句,它以左花括號(hào)開(kāi)始,到右花括號(hào)結(jié)束,中間為一條或若干條C++語(yǔ)句。

在一個(gè)函數(shù)的參數(shù)表中,每個(gè)參數(shù)可以為任一種數(shù)據(jù)類型,包括普通類型、指針類型、數(shù)組類型、引用類型等,一個(gè)函數(shù)的返回值可以是除數(shù)組類型之外的任何類型,包括普通類型、指針類型和引用類型等。另外,當(dāng)不需要返回值時(shí),應(yīng)把函數(shù)定義為void類型。

二)、定義格式舉例

(1) void f1() {...}

(2) void f2(int x) {...}

(3) int f3(int x,int* p) {...}

(4) char* f4(char a[]){...}

(5) int f5(int x,double d) {...}

(6) int f6(int b[10], int n) {...}

(7) void f7(float c[][N], int m, float max) {...}

(8) bool f8(ElemType* bt, ElemType item) {...}

在第一條函數(shù)定義中,函數(shù)名為f1,函數(shù)類型為void,參數(shù)表為空,此函數(shù)是一個(gè)無(wú)參無(wú)類型函數(shù)。若在f1后面的圓括號(hào)內(nèi)寫(xiě)入保留字void,也表示為無(wú)參函數(shù)。

在第二條函數(shù)定義中,僅帶有一個(gè)類型為int的形參變量x,該函數(shù)沒(méi)有返回值。

在第三條函數(shù)定義中,函數(shù)名為f3,函數(shù)類型為int,函數(shù)參數(shù)為x和p,其中x為int型普通參數(shù),p為int*型指針參數(shù)。

在第四條函數(shù)定義中,函數(shù)名為f4,函數(shù)類型為char*,即字符指針類型,參數(shù)表中包含一個(gè)一維字符數(shù)組參數(shù)。注意:在定義任何類型的一維數(shù)組參數(shù)時(shí),不需要給出維的尺寸,當(dāng)然給出也是允許的,但沒(méi)有任何意義。

在第五條函數(shù)定義中,函數(shù)名為f5,返回類型為int,該函數(shù)帶有兩個(gè)形參,一個(gè)為 整型引用變量x,另一個(gè)為雙精度變量d。

在第六條函數(shù)定義中,函數(shù)名為f6,函數(shù)類型為int,即整型引用,該函數(shù)帶有兩個(gè)形參,一個(gè)是整型數(shù)組b,另一個(gè)是整型變量n。在這里定義形參數(shù)組b所給出的維的尺寸10可以被省略。

在第七條函數(shù)定義中,函數(shù)名為f7,無(wú)函數(shù)類型,參數(shù)表中包含三個(gè)參數(shù),一個(gè)為二維單精度型數(shù)組c,第二個(gè)為整型變量m,第三個(gè)為單精度引用變量max。注意:當(dāng)定義一個(gè)二維數(shù)組參數(shù)時(shí),第二維的尺寸必須給出,并且必須是一個(gè)常量表達(dá)式,第一維尺寸可給出也可不給出,其作用相同。

在第八條函數(shù)定義中,函數(shù)名為f8,返回類型為bool,即邏輯類型,該函數(shù)帶有兩個(gè)參數(shù),一個(gè)為形參bt,它為ElemType的指針引用類型,另一個(gè)為形參item,它是ElemType的引用類型,其中ElemType為一種用戶定義的類型或是通過(guò)typedef語(yǔ)句定義的一個(gè)類型的別名。

三)、有關(guān)函數(shù)定義的幾點(diǎn)說(shuō)明

1. 函數(shù)原型語(yǔ)句

在一個(gè)函數(shù)定義中,函數(shù)體之前的所有部分稱為函數(shù)頭,它給出了該函數(shù)的返回類型、每個(gè)參數(shù)的次序和類型等函數(shù)原型信息,所以當(dāng)沒(méi)有專門給出函數(shù)原型說(shuō)明語(yǔ)句時(shí),系統(tǒng)就從函數(shù)頭中獲取函數(shù)原型信息。

一個(gè)函數(shù)必須先定義或聲明而后才能被調(diào)用,否則編譯程序無(wú)法判斷該調(diào)用的正確性。一個(gè)函數(shù)的聲明是通過(guò)使用一條函數(shù)原型語(yǔ)句實(shí)現(xiàn)的,當(dāng)然使用多條相同的原型語(yǔ)句聲明同一個(gè)函數(shù)雖然多余但也是允許的,編譯時(shí)不會(huì)出現(xiàn)錯(cuò)誤。

在一個(gè)完整的程序中,函數(shù)的定義和函數(shù)的調(diào)用可以在同一個(gè)程序文件中,也可以處在不同的程序文件中,但必須確保函數(shù)原型語(yǔ)句與函數(shù)調(diào)用表達(dá)式出現(xiàn)在同一個(gè)文件中,并且函數(shù)原型語(yǔ)句出現(xiàn)在前,函數(shù)的調(diào)用出現(xiàn)在后。

通常把一個(gè)程序中用戶定義的所有函數(shù)的原型語(yǔ)句組織在一起,構(gòu)成一個(gè)頭文件,讓該程序中所含的每個(gè)程序文件的開(kāi)始(即所有函數(shù)定義之前)包含這個(gè)頭文件(通過(guò)#include命令實(shí)現(xiàn)),這樣不管每個(gè)函數(shù)的定義在哪里出現(xiàn),都能夠確保函數(shù)先聲明后使用(即調(diào)用)這一原則的實(shí)現(xiàn)。

一個(gè)函數(shù)的原型語(yǔ)句就是其函數(shù)頭的一個(gè)拷貝,當(dāng)然要在最后加上語(yǔ)句接上結(jié)束符分號(hào)。函數(shù)原型語(yǔ)句與函數(shù)頭也有細(xì)微的差別,在函數(shù)原型語(yǔ)句中,其參數(shù)表中的每個(gè)參數(shù)允許只保留參數(shù)類型,而省略參數(shù)名,并且若使用參數(shù)名也允許與函數(shù)頭中對(duì)應(yīng)的參數(shù)名不同。

2. 常量形參

在定義一個(gè)函數(shù)時(shí),若只允許函數(shù)體訪問(wèn)一個(gè)形參的值,不允許修改它的值,則應(yīng)把該形參說(shuō)明為常量,這只要在形參說(shuō)明的前面加上const保留字進(jìn)行修飾即可。如:

void f9(const int x, const char y);

void f10(const char* p, char key);

在函數(shù)f9的函數(shù)體中只允許使用x和y的值,不允許修改它們的值。在函數(shù)f10的函數(shù)體中只允許使用p所指向的字符對(duì)象或字符數(shù)組對(duì)象的值,不允許修改它們的值,但在函數(shù)體中既允許使用也允許修改形參key的值。

3. 缺省參數(shù)

在一個(gè)函數(shù)定義中,可根據(jù)需要對(duì)參數(shù)表末尾的一個(gè)或連續(xù)若干個(gè)參數(shù)給出缺省值,當(dāng)調(diào)用這個(gè)函數(shù)時(shí),若實(shí)參表中沒(méi)有給出對(duì)應(yīng)的實(shí)參,則形參將采用這個(gè)缺省值。如:

void f11(int x, int y=0) {...}

int f12(int a[], char op='+', int k=10) {...}

函數(shù)f11的定義帶有兩個(gè)參數(shù),分別為整型變量x和y,并且y帶有缺省值0,若調(diào)用該函數(shù)的表達(dá)式為f11(a,b),將把a(bǔ)的值賦給x,把b的值賦給y,接著執(zhí)行函數(shù)體;若調(diào)用該函數(shù)的表達(dá)式為f11(a+b),則也是正確的調(diào)用格式,它將把a(bǔ)+b的值賦給x,因y沒(méi)有對(duì)應(yīng)的實(shí)參,將采用缺省值0,參數(shù)傳送后接著執(zhí)行函數(shù)體。

函數(shù)f12的定義帶有三個(gè)參數(shù),其中后兩個(gè)帶有缺省值,所以調(diào)用它的函數(shù)格式有三種,一種只帶一個(gè)實(shí)參,用于向形參a傳送數(shù)據(jù),后兩個(gè)形參采用缺省值,第二種帶有兩個(gè)實(shí)參,用于分別向形參a和op傳送數(shù)據(jù),第三個(gè)形參采用缺省值,第三種帶有三個(gè)實(shí)參,分別用于傳送給三個(gè)形參。

若一個(gè)函數(shù)帶有專門的函數(shù)原型語(yǔ)句,則形參的缺省值只能在該函數(shù)原型語(yǔ)句中給出,不允許在函數(shù)頭中給出。如對(duì)于上述的f11和f12函數(shù),其對(duì)應(yīng)的函數(shù)原型語(yǔ)句分別為:

void f11(int x, int y=0);

int f12(int a[], char op='+', int k=10);

函數(shù)定義應(yīng)分別改寫(xiě)為:

void f11(int x, int y) {...}

int f12(int a[], char op, int k) {...}

4. 數(shù)組參數(shù)

在函數(shù)定義中的每個(gè)數(shù)組參數(shù)實(shí)際上是指向元素類型的指針參數(shù)。對(duì)于一維數(shù)組參數(shù)說(shuō)明:

數(shù)據(jù)類型 數(shù)組名[]

它與下面的指針參數(shù)說(shuō)明完全等價(jià):

數(shù)據(jù)類型 *指針變量名

其中指針變量名就是數(shù)組參數(shù)說(shuō)明中的數(shù)組名。如對(duì)于f12函數(shù)定義中的數(shù)組參數(shù)說(shuō)明int a[],等價(jià)于指針參數(shù)說(shuō)明int* a。也就是說(shuō),數(shù)組參數(shù)說(shuō)明中的數(shù)組名a是一個(gè)類型為int*的形參。注意:在變量定義語(yǔ)句中定義的數(shù)組,其數(shù)組名代表的是一個(gè)數(shù)組,它的值是指向第一個(gè)元素的指針常量,這與數(shù)組形參的含義有區(qū)別。

對(duì)于二維數(shù)組參數(shù)說(shuō)明:

數(shù)據(jù)類型 參數(shù)名[][第二維尺寸]

它與下面的指針參數(shù)說(shuō)明完全等價(jià):

數(shù)據(jù)類型 (*參數(shù)名)[第二維尺寸]

如對(duì)于f7函數(shù)定義中的二維數(shù)組參數(shù)說(shuō)明float c[][N],等價(jià)于指針參數(shù)說(shuō)明float(*c)[N]。

5. 函數(shù)類型

當(dāng)調(diào)用一個(gè)函數(shù)時(shí)就執(zhí)行一遍循環(huán)體,對(duì)于類型為非void的函數(shù),函數(shù)體中至少必須帶有一條return語(yǔ)句,并且每條return語(yǔ)句必須帶有一個(gè)表達(dá)式,當(dāng)執(zhí)行到任一條return語(yǔ)句時(shí),將計(jì)算出它的表達(dá)式的值,結(jié)束整個(gè)函數(shù)的調(diào)用過(guò)程,把這個(gè)值作為所求的函數(shù)值帶回到調(diào)用位置,參與相應(yīng)的運(yùn)算;對(duì)于類型為void的函數(shù),它不需要返回任何函數(shù)值,所以在函數(shù)體中既可以使用return語(yǔ)句,也可以不使用,對(duì)于使用的每條return語(yǔ)句不允許也不需要帶有表達(dá)式,當(dāng)執(zhí)行到任一條return語(yǔ)句時(shí),或執(zhí)行到函數(shù)體最后結(jié)束位置時(shí),將結(jié)束函數(shù)的調(diào)用過(guò)程,返回到調(diào)用位置向下繼續(xù)執(zhí)行。

6. 內(nèi)聯(lián)函數(shù)

當(dāng)在一個(gè)函數(shù)的定義或聲明前加上關(guān)鍵字inline則就把該函數(shù)聲明為內(nèi)聯(lián)函數(shù)。計(jì)算機(jī)在執(zhí)行一般函數(shù)的調(diào)用時(shí),無(wú)論該函數(shù)多么簡(jiǎn)單或復(fù)雜,都要經(jīng)過(guò)參數(shù)傳遞、執(zhí)行函數(shù)體和返回等操作。若把一個(gè)函數(shù)聲明為內(nèi)聯(lián)函數(shù)后,在程序編譯階段系統(tǒng)就有可能把所有調(diào)用該函數(shù)的地方都直接替換為該函數(shù)的執(zhí)行代碼,由此省去函數(shù)調(diào)用時(shí)的參數(shù)傳遞和返回操作,從而加快整個(gè)程序的執(zhí)行速度。通??砂岩恍┫鄬?duì)簡(jiǎn)單的函數(shù)聲明為內(nèi)聯(lián)函數(shù),對(duì)于較復(fù)雜的函數(shù)則不應(yīng)聲明為內(nèi)聯(lián)函數(shù)。從用戶的角度看,調(diào)用內(nèi)聯(lián)函數(shù)和一般函數(shù)沒(méi)有任何區(qū)別。下面就是一個(gè)內(nèi)聯(lián)函數(shù)定義的例子,它返回形參值的立方。

inline int cube(int n)

{

return n*n*n;

}

C語(yǔ)言主函數(shù)和頭文件是什么意思

主函數(shù)是一個(gè)程序的入口,程序第一個(gè)執(zhí)行的函數(shù)。頭文件就是一個(gè)函數(shù)的倉(cāng)庫(kù),在C中使用某函數(shù)必須包含對(duì)應(yīng)頭文件。

c++函數(shù)頭是什么意思

c++函數(shù)頭,即頭文件函數(shù)。

在C語(yǔ)言家族程序中,頭文件被大量使用。一般而言,每個(gè)C++/C程序通常由頭文件(header files)和定義文件(definition files)組成。頭文件作為一種包含功能函數(shù)、數(shù)據(jù)接口聲明的載體文件,主要用于保存程序的聲明(declaration),而定義文件用于保存程序的實(shí)現(xiàn) (implementation)。 .c就是你寫(xiě)的程序文件。

C/C++頭文件一覽

C

#include assert.h//設(shè)定插入點(diǎn)

#include ctype.h //字符處理

#include errno.h //定義錯(cuò)誤碼

#include float.h //浮點(diǎn)數(shù)處理

#include iso646.h //對(duì)應(yīng)各種運(yùn)算符的宏

#include limits.h//定義各種數(shù)據(jù)類型最值的常量

#include locale.h//定義本地化C函數(shù)

#include math.h //定義數(shù)學(xué)函數(shù)

#include setjmp.h //異常處理支持

#include signal.h //信號(hào)機(jī)制支持

#include stdarg.h //不定參數(shù)列表支持

#include stddef.h //常用常量

#include stdio.h //定義輸入/輸出函數(shù)

#include stdlib.h//定義雜項(xiàng)函數(shù)及內(nèi)存分配函數(shù)

#include string.h//字符串處理

#include time.h //定義關(guān)于時(shí)間的函數(shù)

#include wchar.h //寬字符處理及輸入/輸出

#include wctype.h//寬字符分類

傳統(tǒng)C++

#include fstream.h  //改用fstream

#include iomanip.h  //改用iomainip

#include iostream.h //改用iostream

#include strstrea.h //該類不再支持,改用sstream中的stringstream

————————————————————————————————

標(biāo)準(zhǔn)C++ 

#include algorithm  //STL 通用算法

#include bitset //STL 位集容器

#include cctype //字符處理

#include cerrno //定義錯(cuò)誤碼

#include cfloat //浮點(diǎn)數(shù)處理

#include ciso646 //對(duì)應(yīng)各種運(yùn)算符的宏

#include climits //定義各種數(shù)據(jù)類型最值的常量

#include clocale //定義本地化函數(shù)

#include cmath  //定義數(shù)學(xué)函數(shù)

#include complex //復(fù)數(shù)類

#include csignal //信號(hào)機(jī)制支持

#include csetjmp //異常處理支持

#include cstdarg //不定參數(shù)列表支持

#include cstddef //常用常量

#include cstdio //定義輸入/輸出函數(shù)

#include cstdlib //定義雜項(xiàng)函數(shù)及內(nèi)存分配函數(shù)

#include cstring //字符串處理

#include ctime  //定義關(guān)于時(shí)間的函數(shù)

#include cwchar //寬字符處理及輸入/輸出

#include cwctype //寬字符分類

#include deque  //STL 雙端隊(duì)列容器

#include exception  //異常處理類

#include fstream   //文件輸入/輸出

#include functional //STL 定義運(yùn)算函數(shù)(代替運(yùn)算符)

#include limits //定義各種數(shù)據(jù)類型最值常量

#include list//STL 線性列表容器

#include locale //本地化特定信息

#include map //STL 映射容器

#include memory //STL通過(guò)分配器進(jìn)行的內(nèi)存分配

#includenew //動(dòng)態(tài)內(nèi)存分配

#include numeric //STL常用的數(shù)字操作

#include iomanip   //參數(shù)化輸入/輸出

#include ios //基本輸入/輸出支持

#include iosfwd //輸入/輸出系統(tǒng)使用的前置聲明

#include iostream  //數(shù)據(jù)流輸入/輸出

#include istream //基本輸入流

#include iterator //STL迭代器

#include ostream //基本輸出流

#include queue  //STL 隊(duì)列容器

#include set //STL 集合容器

#include sstream //基于字符串的流

#include stack  //STL 堆棧容器

#include stdexcept  //標(biāo)準(zhǔn)異常類

#include streambuf  //底層輸入/輸出支持

#include string //字符串類

#include typeinfo //運(yùn)行期間類型信息

#include utility //STL 通用模板類

#include valarray //對(duì)包含值的數(shù)組的操作

#include vector //STL 動(dòng)態(tài)數(shù)組容器

————————————————————————————————

C99增加的部分

#include complex.h //復(fù)數(shù)處理

#include fenv.h//浮點(diǎn)環(huán)境

#include inttypes.h//整數(shù)格式轉(zhuǎn)換

#include stdbool.h //布爾環(huán)境

#include stdint.h //整型環(huán)境

#include tgmath.h //通用類型數(shù)學(xué)宏

頭文件 ctype.h

字符處理函數(shù): 本類別函數(shù)用于對(duì)單個(gè)字符進(jìn)行處理,包括字符的類別測(cè)試和字符的大小寫(xiě)轉(zhuǎn)換

----------------------------------------

字符測(cè)試是否字母和數(shù)字 isalnum

是否字母 isalpha

是否控制字符 iscntrl

是否數(shù)字 isdigit

是否可顯示字符(除空格外) isgraph

是否可顯示字符(包括空格) isprint

是否既不是空格,又不是字母和數(shù)字的可顯示字符 ispunct

是否空格 isspace

是否大寫(xiě)字母 isupper

是否16進(jìn)制數(shù)字(0-9,A-F)字符 isxdigit

字符大小寫(xiě)轉(zhuǎn)換函數(shù) 轉(zhuǎn)換為大寫(xiě)字母 toupper

轉(zhuǎn)換為小寫(xiě)字母 tolower

頭文件 local.h

地區(qū)化: 本類別的函數(shù)用于處理不同國(guó)家的語(yǔ)言差異。

----------------------------------------

地區(qū)控制 地區(qū)設(shè)置 setlocale

數(shù)字格式約定查詢 國(guó)家的貨幣、日期、時(shí)間等的格式轉(zhuǎn)換 localeconv

頭文件 math.h

數(shù)學(xué)函數(shù): 本分類給出了各種數(shù)學(xué)計(jì)算函數(shù),必須提醒的是ANSIC標(biāo)準(zhǔn)中的數(shù)據(jù)格式并不符合IEEE754標(biāo)準(zhǔn),一些C語(yǔ)言編譯器卻遵循IEEE754(例如frinklin C51)

----------------------------------------

反余弦 acos

反正弦 asin

反正切 atan

反正切2 atan2

余弦 cos

正弦 sin

正切 tan

雙曲余弦 cosh

雙曲正弦 sinh

雙曲正切 tanh

指數(shù)函數(shù) exp

指數(shù)分解函數(shù) frexp

乘積指數(shù)函數(shù) fdexp

自然對(duì)數(shù) log

以10為底的對(duì)數(shù) log10

浮點(diǎn)數(shù)分解函數(shù) modf

冪函數(shù) pow

平方根函數(shù) sqrt

求下限接近整數(shù) ceil

絕對(duì)值 fabs

求上限接近整數(shù) floor

求余數(shù) fmod

頭文件 setjmp.h io.h

本分類函數(shù)用于實(shí)現(xiàn)在不同底函數(shù)之間直接跳轉(zhuǎn)代碼。

----------------------------------------

保存調(diào)用環(huán)境 setjmp

恢復(fù)調(diào)用環(huán)境 longjmp

頭文件 signal.h

信號(hào)處理: 該分類函數(shù)用于處理那些在程序執(zhí)行過(guò)程中發(fā)生例外的情況。

----------------------------------------

指定信號(hào)處理函數(shù) signal

發(fā)送信號(hào) raise

頭文件 stdarg.h

可變參數(shù)處理: 本類函數(shù)用于實(shí)現(xiàn)諸如printf,scanf等參數(shù)數(shù)量可變底函數(shù)。

----------------------------------------

可變參數(shù)訪問(wèn)宏

可變參數(shù)開(kāi)始宏 va_start

可變參數(shù)結(jié)束宏 va_end

可變參數(shù)訪問(wèn)宏 訪問(wèn)下一個(gè)可變參數(shù)宏 va_arg

頭文件 stdio.h

輸入輸出函數(shù):該分類用于處理包括文件、控制臺(tái)等各種輸入輸出設(shè)備,各種函數(shù)以“流”的方式實(shí)現(xiàn)

----------------------------------------

刪除文件 remove

修改文件名稱 rename

生成臨時(shí)文件名稱 tmpfile

得到臨時(shí)文件路徑 tmpnam

文件訪問(wèn) 關(guān)閉文件 fclose

刷新緩沖區(qū) fflush

打開(kāi)文件 fopen

將已存在的流指針和新文件連接 freopen

設(shè)置磁盤緩沖區(qū) setbuf

設(shè)置磁盤緩沖區(qū) setvbuf

格式化輸入與輸出函數(shù)

格式輸出 fprintf

格式輸入 fscanf

格式輸出(控制臺(tái)) printf

格式輸入(控制臺(tái)) scanf

格式輸出到緩沖區(qū) sprintf

從緩沖區(qū)中按格式輸入 sscanf

格式化輸出 vfprintf

格式化輸出 vprintf

格式化輸出 vsprintf

字符輸入輸出函數(shù)

輸入一個(gè)字符 fgetc

字符串輸入 fgets

字符輸出 fputc

字符串輸出 fputs

字符輸入(控制臺(tái)) getc

字符輸入(控制臺(tái)) getchar

字符串輸入(控制臺(tái)) gets

字符輸出(控制臺(tái)) putc

字符輸出(控制臺(tái)) putchar

字符串輸出(控制臺(tái)) puts

字符輸出到流的頭部 ungetc

直接輸入輸出

直接流讀操作 fread

直接流寫(xiě)操作 fwrite

文件定位函數(shù)

得到文件位置 fgetpos

文件位置移動(dòng) fseek

文件位置設(shè)置 fsetpos

得到文件位置 ftell

文件位置復(fù)零位 remind

錯(cuò)誤處理函數(shù)

錯(cuò)誤清除 clearerr

文件結(jié)尾判斷 feof

文件錯(cuò)誤檢測(cè) ferror

得到錯(cuò)誤提示字符串 perror

頭文件 stdlib.h

實(shí)用工具函數(shù): 本分類給出了一些函數(shù)無(wú)法按以上分類,但又是編程所必須要的。

----------------------------------------

字符串轉(zhuǎn)換函數(shù)

字符串轉(zhuǎn)換為整數(shù) atoi

字符串轉(zhuǎn)換為長(zhǎng)整數(shù) atol

字符串轉(zhuǎn)換為浮點(diǎn)數(shù) strtod

字符串轉(zhuǎn)換為長(zhǎng)整數(shù) strtol

字符串轉(zhuǎn)換為無(wú)符號(hào)長(zhǎng)整型 strtoul

偽隨機(jī)序列產(chǎn)生函數(shù)

產(chǎn)生隨機(jī)數(shù) rand

設(shè)置隨機(jī)函數(shù)的起動(dòng)數(shù)值 srand

存儲(chǔ)管理函數(shù)

分配存儲(chǔ)器 calloc

釋放存儲(chǔ)器 free

存儲(chǔ)器分配 malloc

重新分配存儲(chǔ)器 realloc

環(huán)境通信

中止程序 abort

退出程序執(zhí)行,并清除環(huán)境變量 atexit

退出程序執(zhí)行 exit

讀取環(huán)境參數(shù) getenv

程序掛起,臨時(shí)執(zhí)行一個(gè)其他程序 system

搜索和排序工具 二分查找(數(shù)據(jù)必須已排序) bsearch

快速排序 qsort

整數(shù)運(yùn)算函數(shù) 求絕對(duì)值 abs

得到除法運(yùn)算底商和余數(shù) div

求長(zhǎng)整形底絕對(duì)值 labs

求長(zhǎng)整形除法的商和余數(shù) ldiv

多字節(jié)字符函數(shù) 得到多字節(jié)字符的字節(jié)數(shù) mblen

得到多字節(jié)字符的字節(jié)數(shù) mbtowc

多字節(jié)字符轉(zhuǎn)換 wctomb

多字節(jié)字符的字符串操作 將多字節(jié)串轉(zhuǎn)換為整數(shù)數(shù)組 mbstowcs

將多字節(jié)串轉(zhuǎn)換為字符數(shù)組 mcstowbs

頭文件 string.h

字符串處理: 本分類的函數(shù)用于對(duì)字符串進(jìn)行合并、比較等操作

----------------------------------------

字符串拷貝 塊拷貝(目的和源存儲(chǔ)區(qū)不可重疊) memcpy

塊拷貝(目的和源存儲(chǔ)區(qū)可重疊) memmove

串拷貝 strcpy

按長(zhǎng)度的串拷貝 strncpy

字符串連接函數(shù) 串連接 strcat

按長(zhǎng)度連接字符串 strncat

串比較函數(shù) 塊比較 memcmp

字符串比較 strcmp

字符串比較(用于非英文字符) strcoll

按長(zhǎng)度對(duì)字符串比較 strncmp

字符串轉(zhuǎn)換 strxfrm

字符與字符串查找 字符查找 memchr

字符查找 strchr

字符串查找 strcspn

字符串查找 strpbrk

字符串查找 strspn

字符串查找 strstr

字符串分解 strtok

雜類函數(shù) 字符串設(shè)置 memset

錯(cuò)誤字符串映射 strerror

求字符串長(zhǎng)度 strlen

頭文件 time.h

日期和時(shí)間函數(shù): 本類別給出時(shí)間和日期處理函數(shù)

----------------------------------------

時(shí)間操作函數(shù)得到處理器時(shí)間 clock

得到時(shí)間差 difftime

設(shè)置時(shí)間 mktime

得到時(shí)間 time

時(shí)間轉(zhuǎn)換函數(shù) 得到以ASCII碼表示的時(shí)間 asctime

得到字符串表示的時(shí)間 ctime

得到指定格式的時(shí)間 strftime

序號(hào) 庫(kù)類別 頭文件

----------------------------------------

1 錯(cuò)誤處理 errno.h

2 字符處理 ctyphe.

3 地區(qū)化 local.h

4 數(shù)學(xué)函數(shù) math.h

5 信號(hào)處理 signal.h

6 輸入輸出 stdio.h

7 實(shí)用工具程序 stdlib.h

8 字符串處理 string.h

當(dāng)前標(biāo)題:c語(yǔ)言頭函數(shù)是什么 c語(yǔ)言函數(shù)頭包括哪些
文章網(wǎng)址:http://muchs.cn/article0/hgspoo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開(kāi)發(fā)網(wǎng)站設(shè)計(jì)公司、App開(kāi)發(fā)定制開(kāi)發(fā)、網(wǎng)站制作、企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司