int。C語言規(guī)定:在定義函數(shù)時(shí),若其返回值類型為int,則可以默認(rèn)。
為富民等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及富民網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都網(wǎng)站建設(shè)、成都做網(wǎng)站、富民網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
C語言函數(shù)有三類,分為外部函數(shù)、靜態(tài)函數(shù)、內(nèi)聯(lián)函數(shù),其中前兩種是C89標(biāo)準(zhǔn)支持,第三種是C99標(biāo)準(zhǔn)增加的。
1、外部函數(shù)
這類函數(shù)是默認(rèn)的函數(shù)類型,基本上平時(shí)我們使用的就是這種函數(shù),聲明有以下兩種方式,例如:
// 使用extern關(guān)鍵字,顯示聲明
extern int add(int a, int b);
// 或省略關(guān)鍵字extern,編譯器也會(huì)自動(dòng)認(rèn)為是extern
int add(int a, int b);
外部函數(shù)表明在當(dāng)前聲明和定義的代碼文件中可以使用,也可以在其它代碼文件中可以通過#include指令包含使用,對(duì)外部的代碼可見。
2、靜態(tài)函數(shù)
這類函數(shù)其實(shí)與外部函數(shù)相對(duì)的,因?yàn)樾枰褂胹tatic關(guān)鍵字修飾,因此稱為靜態(tài)函數(shù),其實(shí)就是內(nèi)部函數(shù)。聲明方式如下,例如:
static int add(int a, int b);
靜態(tài)函數(shù)的作用域只能在當(dāng)前聲明和定義的文件中,在其它代碼文件中無法#include使用,因此在整個(gè)程序中,特別是大型程序,有多個(gè)源代碼文件時(shí),即使定義相同名稱的兩個(gè)靜態(tài)函數(shù),也不會(huì)有命名和使用沖突。
3、內(nèi)聯(lián)函數(shù)
是新增的特性,使用inline關(guān)鍵字聲明和定義,該類函數(shù)類似#define宏定義展開,編譯時(shí)會(huì)直接將函數(shù)定義代碼在調(diào)用的地方復(fù)制展開,這樣會(huì)減少函數(shù)調(diào)用的開銷,提高運(yùn)行效率。
inline int add(int a, int b);
內(nèi)聯(lián)函數(shù)適合短小的、被頻繁調(diào)用的函數(shù),對(duì)于復(fù)雜函數(shù),無法使用。
擴(kuò)展資料:
C語言編寫注意事項(xiàng):
1、const在聲明變量中起限制作用, 該限定變量的值不能被修改。
2、%運(yùn)算符不能應(yīng)用與float或double類型。
3、char類型轉(zhuǎn)換為int型時(shí), 無法判斷它是signed還是unsigned.這樣其結(jié)果有可能為負(fù)數(shù), 因此轉(zhuǎn)換時(shí)盡量指定signed和unsigned限制符。
4、++i與i++不同之處: ++i是先+1在使用, i++是先使用i在遞加1。
5、三元運(yùn)算符"?:" 第一個(gè)表達(dá)式的括號(hào)不是必須的,但是由于三元表達(dá)式的優(yōu)先級(jí)非常低,我們還是將第一個(gè)表達(dá)式用()括起便于閱讀和理解。
6、C語言中可以使用遞歸 (即函數(shù)調(diào)用自身函數(shù)), 其不節(jié)省儲(chǔ)存器開銷也不加快執(zhí)行速度, 只是使程序緊湊便于理解。
一種是用戶自定義函數(shù),就是自己根據(jù)功能的需要自己編寫的函數(shù);另一種是系統(tǒng)自帶的函數(shù),如sqrt(x)函數(shù) (就是求x的二次方根),這樣的可以直接用,前提是得在頭文件中把它們包含進(jìn)去。
在編程領(lǐng)域中,C語言的運(yùn)用非常之多,它兼顧了高級(jí)語言的匯編語言的優(yōu)點(diǎn),相較于其它編程語言具有較大優(yōu)勢(shì)。計(jì)算機(jī)系統(tǒng)設(shè)計(jì)以及應(yīng)用程序編寫是C語言應(yīng)用的兩大領(lǐng)域。同時(shí),C語言的普適較強(qiáng),在許多計(jì)算機(jī)操作系統(tǒng)中都能夠得到適用,且效率顯著。
擴(kuò)展資料:
C語言包含有各種控制語句僅有9種,關(guān)鍵字也只有32 個(gè),程序的編寫要求不嚴(yán)格且多以小寫字母為主,對(duì)許多不必要的部分進(jìn)行了精簡(jiǎn)。
實(shí)際上,語句構(gòu)成與硬件有關(guān)聯(lián)的較少,且C語言本身不提供與硬件相關(guān)的輸入輸出、文件管理等功能,如需此類功能,需要通過配合編譯系統(tǒng)所支持的各類庫(kù)進(jìn)行編程,故c語言擁有非常簡(jiǎn)潔的編譯系統(tǒng)。
如果一個(gè)變量名后面跟著一個(gè)有數(shù)字的中括號(hào),這個(gè)聲明就是數(shù)組聲明。字符串也是一種數(shù)組。它們以ASCII的NULL作為數(shù)組的結(jié)束。要特別注意的是,方括內(nèi)的索引值是從0算起的。
參考資料來源:百度百科-c語言
參考資料來源:百度百科--C語言函數(shù)
一般包括字符庫(kù)函數(shù),數(shù)學(xué)函數(shù),目錄函數(shù),進(jìn)程函數(shù),診斷函數(shù),操作函數(shù)等。
字符庫(kù)函數(shù)所在函數(shù)庫(kù)為ctype.h;數(shù)學(xué)函數(shù)所在函數(shù)庫(kù)為math.h、stdio.h、string.h、float.h;目錄函數(shù)所在函數(shù)庫(kù)為dir.h、dos.h;進(jìn)程函數(shù)所在函數(shù)庫(kù)為stdlib.h、process.h。
診斷函數(shù)所在函數(shù)庫(kù)為assert.h、math.h;接口子程序所在函數(shù)庫(kù)為:dos.h、bios.h;操作函數(shù)所在函數(shù)庫(kù)為string.h、mem.h;時(shí)間日期函數(shù)函數(shù)庫(kù)為time.h、dos.h。
擴(kuò)展資料
C語言為一種程序設(shè)計(jì)的入門語言。由于C語言的語句中沒有提供直接計(jì)算sin或cos函數(shù)的語句,會(huì)造成編寫程序困難;但是函數(shù)庫(kù)提供了sin和cos函數(shù),可以拿來直接調(diào)用。顯示一段文字,我們?cè)贑語言中找不到顯示語句,只能使用庫(kù)函數(shù)printf。
C語言的庫(kù)函數(shù)并不是C語言本身的一部分,它是由編譯程序根據(jù)一般用戶的需要,編制并提供用戶使用的一組程序。C的庫(kù)函數(shù)極大地方便了用戶,同時(shí)也補(bǔ)充了C語言本身的不足。在編寫C語言程序時(shí),使用庫(kù)函數(shù),既可以提高程序的運(yùn)行效率,又可以提高編程的質(zhì)量。
參考資料來源:百度百科-C語言庫(kù)函數(shù)
參考資料來源:百度百科-C語言函數(shù)
常用詞匯:
1、short:修飾int,短整型數(shù)據(jù),可省略被修飾的int。
2、long:修飾int,長(zhǎng)整型數(shù)據(jù),可省略被修飾的int。
3、long long:修飾int,超長(zhǎng)整型數(shù)據(jù),可省略被修飾的int。
4、signed:修飾整型數(shù)據(jù),有符號(hào)數(shù)據(jù)類型。
5、unsigned:修飾整型數(shù)據(jù),無符號(hào)數(shù)據(jù)類型。
6、restrict:用于限定和約束指針,并表明指針是訪問一個(gè)數(shù)據(jù)對(duì)象的唯一且初始的方式。
7、return:用在函數(shù)體中,返回特定值(如果是void類型,則不返回函數(shù)值)。
8、continue:結(jié)束當(dāng)前循環(huán),開始下一輪循環(huán)。
9、break:跳出當(dāng)前循環(huán)或switch結(jié)構(gòu)。
10、goto:無條件跳轉(zhuǎn)語句。
11、if:條件語句,后面不需要放分號(hào)。
12、else:條件語句否定分支(與if連用)。
13、switch:開關(guān)語句(多重分支語句)。
14、case:開關(guān)語句中的分支標(biāo)記,與switch連用。
15、default:開關(guān)語句中的“其他”分支,可選。
常用函數(shù):
1、int isalpha(int ch) 若ch是字母('A'-'Z','a'-'z'),返回非0值,否則返回0。
2、int isalnum(int ch) 若ch是字母('A'-'Z','a'-'z')或數(shù)字('0'-'9'),返回非0值,否則返回0。
3、int abs(int i) 返回整型參數(shù)i的絕對(duì)值。
4、double cabs(struct complex znum) 返回復(fù)數(shù)znum的絕對(duì)值。
5、double fabs(double x) 返回雙精度參數(shù)x的絕對(duì)值。
6、long labs(long n) 返回長(zhǎng)整型參數(shù)n的絕對(duì)值。
參考資料來源:百度百科—C語言
C語言輸入輸出函數(shù)有很多,標(biāo)準(zhǔn)I/O函數(shù)中包含了如下幾個(gè)常用的函數(shù):
scanf,printf,getc,putc,getchar,putchar,gets,puts,fgets,fputs,fgetc,fputc,fscanf,fprintf等.
int
getc(FILE
*fp)
getc主要是從文件中讀出一個(gè)字符.常用的判斷文件是否讀取結(jié)束的語句為
(ch
=
getc(fp))
!=
EOF.EOF為文件結(jié)束標(biāo)志,定義在stdio.h中,就像EXIT_SUCCESS,EXIT_FAILURE定義在stdlib.h中一樣,文件也可以被理解為一種流,所以當(dāng)fp為stdin時(shí),getc(stdin)就等同于getchar()了.
int
putc(int
ch,FILE
*fp)
putc主要是把字符ch寫到文件fp中去.如果fp為stdout,則putc就等同于putchar()了.
int
getchar(void)
getchar主要是從標(biāo)準(zhǔn)輸入流讀取一個(gè)字符.默認(rèn)的標(biāo)準(zhǔn)輸入流即stdio.h中定義的stdin.但是從輸入流中讀取字符時(shí)又涉及到緩沖的問題,所以并不是在屏幕中敲上一個(gè)字符程序就會(huì)運(yùn)行,一般是通過在屏幕上敲上回車鍵,然后將回車前的字符串放在緩沖區(qū)中,getchar就是在緩沖區(qū)中一個(gè)一個(gè)的讀字符.當(dāng)然也可以在while循環(huán)中指定終止字符,如下面的語句:while
((c
=
getchar())
!=
'#')這是以#來結(jié)束的.
int
putchar(int
ch)
putchar(ch)主要是把字符ch寫到標(biāo)準(zhǔn)流stdout中去.
char
*
gets(char
*str)
gets主要是從標(biāo)準(zhǔn)輸入流讀取字符串并回顯,讀到換行符時(shí)退出,并會(huì)將換行符省去.
int
puts(char
*str)
puts主要是把字符串str寫到標(biāo)準(zhǔn)流stdout中去,并會(huì)在輸出到最后時(shí)添加一個(gè)換行符.
char
*fgets(char
*str,
int
num,
FILE
*fp)
str是存放讀入的字符數(shù)組指針,num是最大允許的讀入字符數(shù),fp是文件指針.fgets的功能是讀一行字符,該行的字符數(shù)不大于num-1.因?yàn)閒gets函數(shù)會(huì)在末尾加上一個(gè)空字符以構(gòu)成一個(gè)字符串.另外fgets在讀取到換行符后不會(huì)將其省略.
int
fputs(char
*str,
file
*fp)
fputs將str寫入fp.fputs與puts的不同之處是fputs在打印時(shí)并不添加換行符.
int
fgetc(FILE
*fp)
fgetc從fp的當(dāng)前位置讀取一個(gè)字符.
int
fputc(int
ch,
file
*fp)
fputc是將ch寫入fp當(dāng)前指定位置.
int
fscanf(FILE
*fp,
char
*format,
輸入列表)
fscanf按照指定格式從文件中出讀出數(shù)據(jù),并賦值到參數(shù)列表中.
int
fprintf(FILE
*fp,
char
*format,
輸出列表)
fprintf將格式化數(shù)據(jù)寫入流式文件中.
數(shù)據(jù)塊讀寫函數(shù)
fread
(buffer,size,count,fp);
fwrite(buffer,size,count,fp);
參數(shù)說明:
buffer:是一個(gè)指針。
對(duì)fread
來說,它是讀入數(shù)據(jù)的存放地址。
對(duì)fwrite來說,是要輸出數(shù)據(jù)的地址(均指起始地址)。
size:
要讀寫的字節(jié)數(shù)。
count:
要進(jìn)行讀寫多少個(gè)size字節(jié)的數(shù)據(jù)項(xiàng)。
fp:
文件型指針。
1、庫(kù)函數(shù):是由C語言系統(tǒng)提供的函數(shù),這類函數(shù)用戶可以直接在程序中調(diào)用,從而完成一定的功能,這類函數(shù)也被稱為“標(biāo)準(zhǔn)函數(shù)”。
2、用戶自定義函數(shù):是由用戶在程序中定義的函數(shù),是由用戶根據(jù)應(yīng)用程序的需要而定義、用以完成特定功能的程序模塊。