函數(shù)原型作為聲明,作用是提示編譯器,作為標(biāo)識符的函數(shù)名,在聲明之后或外部編譯單元/庫文件存在定義,以抑制編譯器遇到這個標(biāo)識符時產(chǎn)生標(biāo)識符未定義的編譯錯誤,同時標(biāo)明出這個函數(shù)的參數(shù)傳遞及出入棧順序等必要的進(jìn)出要素,函數(shù)的定義則始終以原型為基準(zhǔn)進(jìn)行實現(xiàn)。原型作為語法技術(shù)的提出,出發(fā)點就在于此,利用它可以方便地定義互相遞歸的函數(shù),以及引用外部庫文件的符號。

麻江網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián),麻江網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為麻江上千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的麻江做網(wǎng)站的公司定做!
c語言標(biāo)準(zhǔn)庫中用于打開文件的函數(shù)是fopen()。
函數(shù)原型:FILE
*
fopen(const
char
*
path,const
char
*
mode);
參數(shù)說明:path指明要打開的文件名,mode指明以什么方式打開。詳細(xì)在下面介紹。
返回值:文件順利打開后,指向該流的文件指針就會被返回。如果文件打開失敗則返回NULL,并把錯誤代碼存在errno
中。示例如下
#includestdio.h
//根據(jù)需要修改成自己要打開的文件即可。
#define F_PATH "d:\\myfile\\file.dat"
int main(void)
{
FILE *fp=NULL;//需要注意
fp=fopen(F_PATH,"r"); //以只讀方式打開一個文件
if(NULL==fp)
{
return -1;//要返回錯誤代碼
}
fclose(fp); //打開一個文件停止操作后,要關(guān)閉打開的文件
fp=NULL;//需要指向空,否則會指向原打開文件地址
return 0;
}
參數(shù)mode的類型:
r
以只讀方式打開文件,該文件必須存在。
r+
以可讀寫方式打開文件,該文件必須存在。
rb+
讀寫打開一個二進(jìn)制文件,允許讀寫數(shù)據(jù),文件必須存在。
w
打開只寫文件,若文件存在則文件長度清為0,即該文件內(nèi)容會消失。若文件不存在則建立該文件。
w+
打開可讀寫文件,若文件存在則文件長度清為零,即該文件內(nèi)容會消失。若文件不存在則建立該文件。
a
以附加的方式打開只寫文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數(shù)據(jù)會被加到文件尾,即文件原先的內(nèi)容會被保留。(EOF符保留)
a+
以附加方式打開可讀寫的文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數(shù)據(jù)會被加到文件尾后,即文件原先的內(nèi)容會被保留。
(原來的EOF符不保留)
wb
只寫打開或新建一個二進(jìn)制文件;只允許寫數(shù)據(jù)。
wb+
讀寫打開或建立一個二進(jìn)制文件,允許讀和寫。
ab+
讀寫打開一個二進(jìn)制文件,允許讀或在文件末追加數(shù)據(jù)。
C語言輸入輸出函數(shù)有很多,標(biāo)準(zhǔn)I/O函數(shù)中包含了如下幾個常用的函數(shù):
scanf,printf,getc,putc,getchar,putchar,gets,puts,fgets,fputs,fgetc,fputc,fscanf,fprintf等.
int getc(FILE *fp)
getc主要是從文件中讀出一個字符.常用的判斷文件是否讀取結(jié)束的語句為 (ch = getc(fp)) != EOF.EOF為文件結(jié)束標(biāo)志,定義在stdio.h中,就像EXIT_SUCCESS,EXIT_FAILURE定義在stdlib.h中一樣,文件也可以被理解為一種流,所以當(dāng)fp為stdin時,getc(stdin)就等同于getchar()了.
int putc(int ch,FILE *fp)
putc主要是把字符ch寫到文件fp中去.如果fp為stdout,則putc就等同于putchar()了.
int getchar(void)
getchar主要是從標(biāo)準(zhǔn)輸入流讀取一個字符.默認(rèn)的標(biāo)準(zhǔn)輸入流即stdio.h中定義的stdin.但是從輸入流中讀取字符時又涉及到緩沖的問題,所以并不是在屏幕中敲上一個字符程序就會運(yùn)行,一般是通過在屏幕上敲上回車鍵,然后將回車前的字符串放在緩沖區(qū)中,getchar就是在緩沖區(qū)中一個一個的讀字符.當(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)輸入流讀取字符串并回顯,讀到換行符時退出,并會將換行符省去.
int puts(char *str)
puts主要是把字符串str寫到標(biāo)準(zhǔn)流stdout中去,并會在輸出到最后時添加一個換行符.
char *fgets(char *str, int num, FILE *fp)
str是存放讀入的字符數(shù)組指針,num是最大允許的讀入字符數(shù),fp是文件指針.fgets的功能是讀一行字符,該行的字符數(shù)不大于num-1.因為fgets函數(shù)會在末尾加上一個空字符以構(gòu)成一個字符串.另外fgets在讀取到換行符后不會將其省略.
int fputs(char *str, file *fp)
fputs將str寫入fp.fputs與puts的不同之處是fputs在打印時并不添加換行符.
int fgetc(FILE *fp)
fgetc從fp的當(dāng)前位置讀取一個字符.
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:是一個指針。
對fread 來說,它是讀入數(shù)據(jù)的存放地址。
對fwrite來說,是要輸出數(shù)據(jù)的地址(均指起始地址)。
size: 要讀寫的字節(jié)數(shù)。
count: 要進(jìn)行讀寫多少個size字節(jié)的數(shù)據(jù)項。
fp: 文件型指針。
1、c語言中我們通常把函數(shù)的聲明叫做函數(shù)的原型。
2、c語言中把函數(shù)的定義叫做函數(shù)的實現(xiàn)。
3、函數(shù)是C/C++程序的基本模塊。可將一些功能相對獨立的或經(jīng)常使用的操作或運(yùn)算抽象出來,定義為函數(shù)。使用時只要考慮其功能和使用接口即可。在結(jié)構(gòu)化程序設(shè)計中,函數(shù)是將任務(wù)進(jìn)行模塊劃分的基本單位。在面向?qū)ο蟮某绦蛟O(shè)計中,類中所封裝的操作是用函數(shù)進(jìn)行描述的,因此函數(shù)在C++程序中具有非常重要的意義。
C語言編譯系統(tǒng)提供了眾多的預(yù)定義庫函數(shù)和宏。用戶在編寫程序時,可以直接調(diào)用這些庫函數(shù)和宏。這里選擇了初學(xué)者常用的一些庫函數(shù),簡單介紹了各函數(shù)的用法和所在的頭文件。
1.測試函數(shù)
Isalnum
原型:int isalnum(int c)
功能:測試參數(shù)c是否為字母或數(shù)字:是則返回非零;否則返回零
頭文件:ctype.h
Isapha
原型:int isapha(int c)
功能:測試參數(shù)c是否為字母:是則返回非零;否則返回零
頭文件:ctype.h
Isascii
原型:int isascii(int c)
功能:測試參數(shù)c是否為ASCII碼(0x00~0x7F):是則返回非零;否則返回零
頭文件:ctype.h
Iscntrl
原型:int iscntrl(int c)
功能:測試參數(shù)c是否為控制字符(0x00~0x1F、0x7F):是則返回非零;否則返回零
頭文件:ctype.h
Isdigit
原型:int isdigit(int c)
功能:測試參數(shù)c是否為數(shù)字:是則返回非零;否則返回零。
頭文件:ctype.h
Isgraph
原型:int isgraph(int c)
功能:測試參數(shù)c是否為可打印字符(0x21~0x7E):是則返回非零;否則返回零
頭文件:ctype.h
Islower
原型:int islower(int c)
功能:測試參數(shù)c是否為小寫字母:是則返回非零;否則返回零
頭文件:ctype.h
Isprint
原型:int isprint(int c)
功能:測試參數(shù)c是否為可打印字符(含空格符0x20~0x7E):是則返回非零;否則返回零
頭文件:ctype.h
Ispunct
原型:int ispunct(int c)
功能:測試參數(shù)c是否為標(biāo)點符號:是則返回非零;否則返回零
頭文件:ctype.h
Isupper
原型:int isupper(inr c)
功能:測試參數(shù)c是否為大寫字母:是則返回非零;否則返回零
Isxdigit
原型:int isxdigit(int c)
功能:測試參數(shù)c是否為十六進(jìn)制數(shù):是則返回非零;否則返回零
2.數(shù)學(xué)函數(shù)
abs
原型:int abs(int i)
功能:返回整數(shù)型參數(shù)i的絕對值
頭文件:stdlib.h,math.h
acos
原型:double acos(double x)
功能:返回雙精度參數(shù)x的反余弦三角函數(shù)值
頭文件:math.h
asin
原型:double asin(double x)
功能:返回雙精度參數(shù)x的反正弦三角函數(shù)值
頭文件:math.h
atan
原型:double atan(double x)
功能:返回雙精度參數(shù)的反正切三角函數(shù)值
頭文件:math.h
atan2
原型:double atan2(double y,double x)
功能:返回雙精度參數(shù)y和x由式y(tǒng)/x所計算的反正切三角函數(shù)值
頭文件:math.h
cabs
原型:double cabs(struct complex znum)
功能:返回一個雙精度數(shù),為計算出復(fù)數(shù)znum的絕對值。Complex的結(jié)構(gòu)模式在math.h中給出定義,其定義如下:
struct complex {
double a,y
};
頭文件:stdlib.h,math.h
ceil
原型:double ceil(double x)
功能:返回不小于參數(shù)x的最小整數(shù)
頭文件:math.h
_clear87
原型:unsigned int _clear87(void)
功能:清除浮點運(yùn)算器狀態(tài)字
頭文件:float.h
_control87
原型:unsigned int _control87(unsigned int newvals,unsigned int mask)
功能:取得或改變浮點運(yùn)算器控制字
頭文件:float.h
cos
原型:double cos(double x)
功能:返回參數(shù)x的余弦函數(shù)值
頭文件:math.h
cosh
原型:double cosh(double x)
功能:返回參數(shù)的雙曲線余弦函數(shù)值
頭文件:math.h
ecvt
原型:char*ecvt(double value,int ndigit,int*decpt,int*sign)
功能:把雙精度數(shù)value轉(zhuǎn)換為ndigit位數(shù)字的以空格字符結(jié)束的字符串,decpt指向小數(shù)點位置,sign為符號標(biāo)志。函數(shù)返回值為指向轉(zhuǎn)換后的字符串的指針
頭文件:stdlib.h
exp
原型:double exp(double x)
功能:返回參數(shù)x的指數(shù)函數(shù)值
頭文件:math.h
fabs
原型:double fabs(double x)
功能:返回參數(shù)x的絕對值
頭文件:math.h
floor
原型:double floor(double x)
功能:返回不大于參數(shù)x的最大整數(shù)
頭文件:math.h
fmod
原型:double fmod(double x,double y)
功能:計算x/y的余數(shù)。返回值為所求的余數(shù)值
頭文件:math.h
_fprest
原型:void _fprest(void)
功能:重新初始化浮點型數(shù)數(shù)學(xué)包
頭文件:float.h
frexp
原型:double frexp(double value,int*eptr)
功能:把雙精度函數(shù)value分解成尾數(shù)和指數(shù)。函數(shù)返回尾數(shù)值,指數(shù)值存放在eptr所指的單元中
頭文件:math.h
hypot
原型:double frexp(double x,double y)
功能:返回由參數(shù)x和y所計算的直角三角形的斜邊長
頭文件:math.h
labs
原型:long labs(long n)
功能:返回長整數(shù)型參數(shù)n的絕對值
頭文件:stdlib.h
ldexp
原型:double ldexp(double value,int exp)
功能:返回value*2exp的值
頭文件:math.h
log
原型:double log(double x)
功能:返回參數(shù)x的自然對數(shù)(ln x)的值
頭文件:math.h
log10
原型:double log10(double x)
功能:返回參數(shù)x以10為底的自然對數(shù)(lg x)的值
頭文件:math.h
modf
原型:double modf(double value,double*iptr)
功能:把雙精度數(shù)value分為整數(shù)部分和小數(shù)部分。整數(shù)部分保存在iptr中,小數(shù)部分作為函數(shù)的返回值
頭文件:math.h
poly
原型 :double poly(double x,int n,double c[ ])
功能:根據(jù)參數(shù)產(chǎn)生x的一個n次多項式,其系數(shù)為 c[0],c[1],…c[n]。函數(shù)返回值為給定x的多項式的值
頭文件:math.h
pow
原型:double pow(double x,double y)
功能:返回計算xy的值
頭文件:math.h
pow10
原型:double pow10(int p)
功能:返回計算10p的值
頭文件:math.h
rand
原型:int rand(void)
功能:隨機(jī)函數(shù),返回一個范圍在0~215-1的隨機(jī)整數(shù)
頭文件:stdlib.h
sin
原型:double sin(double x)
功能:返回參數(shù)x的正弦函數(shù)值
頭文件:math.h
sinh
原型double sinh(double x)
功能:返回參數(shù)x的雙曲正弦函數(shù)值
頭文件:math.h
sqrt
原型:double sqrt
功能:返回參數(shù)x的平方根值
頭文件:math.h
srand
原型:void srand(unsigned seed)
功能:初始化隨機(jī)函數(shù)發(fā)生器
頭文件:stdlib.h
_status87
原型:unsigned int_status87()
功能:取浮點狀態(tài)
頭文件:float.h
tan
原型:dounle tan(double x)
功能:返回參數(shù)x的正切函數(shù)值
頭文件:math.h
tanh
原型:double tan(double x)
功能:返回參數(shù)x的雙曲正切函數(shù)值
頭文件:math.h
一般包括字符庫函數(shù),數(shù)學(xué)函數(shù),目錄函數(shù),進(jìn)程函數(shù),診斷函數(shù),操作函數(shù)等。
分享題目:c語言標(biāo)準(zhǔn)庫函數(shù)函數(shù)原型,c語言 函數(shù)原型
網(wǎng)頁路徑:http://chinadenli.net/article49/dsiggeh.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、全網(wǎng)營銷推廣、網(wǎng)站改版、App設(shè)計、企業(yè)建站、網(wǎng)站設(shè)計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)