1樓:尹六六老師
c語言編譯系統提供了眾多的預定義庫函式和巨集。使用者在編寫程式時,可以直接呼叫這些庫函式和巨集。這裡選擇了初學者常用的一些庫函式,簡單介紹了各函式的用法和所在的標頭檔案。
1.測試函式
isalnum
原型:int isalnum(int c)
功能:測試引數c是否為字母或數字:是則返回非零;否則返回零
標頭檔案:ctype.h
isapha
原型:int isapha(int c)
功能:測試引數c是否為字母:是則返回非零;否則返回零
標頭檔案:ctype.h
isascii
原型:int isascii(int c)
功能:測試引數c是否為ascii碼(0x00~0x7f):是則返回非零;否則返回零
標頭檔案:ctype.h
iscntrl
原型:int iscntrl(int c)
功能:測試引數c是否為控制字元(0x00~0x1f、0x7f):是則返回非零;否則返回零
標頭檔案:ctype.h
isdigit
原型:int isdigit(int c)
功能:測試引數c是否為數字:是則返回非零;否則返回零。
標頭檔案:ctype.h
isgraph
原型:int isgraph(int c)
功能:測試引數c是否為可列印字元(0x21~0x7e):是則返回非零;否則返回零
標頭檔案:ctype.h
islower
原型:int islower(int c)
功能:測試引數c是否為小寫字母:是則返回非零;否則返回零
標頭檔案:ctype.h
isprint
原型:int isprint(int c)
功能:測試引數c是否為可列印字元(含空格符0x20~0x7e):是則返回非零;否則返回零
標頭檔案:ctype.h
ispunct
原型:int ispunct(int c)
功能:測試引數c是否為標點符號:是則返回非零;否則返回零
標頭檔案:ctype.h
isupper
原型:int isupper(inr c)
功能:測試引數c是否為大寫字母:是則返回非零;否則返回零
isxdigit
原型:int isxdigit(int c)
功能:測試引數c是否為十六進位制數:是則返回非零;否則返回零
2.數學函式
abs原型:int abs(int i)
功能:返回整數型引數i的絕對值
標頭檔案:stdlib.h,math.h
acos
原型:double acos(double x)
功能:返回雙精度引數x的反餘弦三角函式值
標頭檔案:math.h
asin
原型:double asin(double x)
功能:返回雙精度引數x的反正弦三角函式值
標頭檔案:math.h
atan
原型:double atan(double x)
功能:返回雙精度引數的反正切三角函式值
標頭檔案:math.h
atan2
原型:double atan2(double y,double x)
功能:返回雙精度引數y和x由式y/x所計算的反正切三角函式值
標頭檔案:math.h
cabs
原型:double cabs(struct complex znum)
功能:返回一個雙精度數,為計算出複數znum的絕對值。complex的結構模式在math.h中給出定義,其定義如下:
struct complex ;
標頭檔案:stdlib.h,math.h
ceil
原型:double ceil(double x)
功能:返回不小於引數x的最小整數
標頭檔案:math.h
_clear87
原型:unsigned int _clear87(void)
功能:清除浮點運算器狀態字
標頭檔案:float.h
_control87
原型:unsigned int _control87(unsigned int newvals,unsigned int mask)
功能:取得或改變浮點運算器控制字
標頭檔案:float.h
cos原型:double cos(double x)
功能:返回引數x的餘弦函式值
標頭檔案:math.h
cosh
原型:double cosh(double x)
功能:返回引數的雙曲線餘弦函式值
標頭檔案:math.h
ecvt
原型:char*ecvt(double value,int ndigit,int*decpt,int*sign)
功能:把雙精度數value轉換為ndigit位數字的以空格字元結束的字串,decpt指向小數點位置,sign為符號標誌。函式返回值為指向轉換後的字串的指標
標頭檔案:stdlib.h
exp原型:double exp(double x)
功能:返回引數x的指數函式值
標頭檔案:math.h
fabs
原型:double fabs(double x)
功能:返回引數x的絕對值
標頭檔案:math.h
floor
原型:double floor(double x)
功能:返回不大於引數x的最大整數
標頭檔案:math.h
fmod
原型:double fmod(double x,double y)
功能:計算x/y的餘數。返回值為所求的餘數值
標頭檔案:math.h
_fprest
原型:void _fprest(void)
功能:重新初始化浮點型數數學包
標頭檔案:float.h
frexp
原型:double frexp(double value,int*eptr)
功能:把雙精度函式value分解成尾數和指數。函式返回尾數值,指數值存放在eptr所指的單元中
標頭檔案:math.h
hypot
原型:double frexp(double x,double y)
功能:返回由引數x和y所計算的直角三角形的斜邊長
標頭檔案:math.h
labs
原型:long labs(long n)
功能:返回長整數型引數n的絕對值
標頭檔案:stdlib.h
ldexp
原型:double ldexp(double value,int exp)
功能:返回value*2exp的值
標頭檔案:math.h
log原型:double log(double x)
功能:返回引數x的自然對數(ln x)的值
標頭檔案:math.h
log10
原型:double log10(double x)
功能:返回引數x以10為底的自然對數(lg x)的值
標頭檔案:math.h
modf
原型:double modf(double value,double*iptr)
功能:把雙精度數value分為整數部分和小數部分。整數部分儲存在iptr中,小數部分作為函式的返回值
標頭檔案:math.h
poly
原型 :double poly(double x,int n,double c[ ])
功能:根據引數產生x的一個n次多項式,其係數為 c[0],c[1],…c[n]。函式返回值為給定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)
功能:隨機函式,返回一個範圍在0~215-1的隨機整數
標頭檔案:stdlib.h
sin原型:double sin(double x)
功能:返回引數x的正弦函式值
標頭檔案:math.h
sinh
原型double sinh(double x)
功能:返回引數x的雙曲正弦函式值
標頭檔案:math.h
sqrt
原型:double sqrt
功能:返回引數x的平方根值
標頭檔案:math.h
srand
原型:void srand(unsigned seed)
功能:初始化隨機函式發生器
標頭檔案:stdlib.h
_status87
原型:unsigned int_status87()
功能:取浮點狀態
標頭檔案:float.h
tan原型:dounle tan(double x)
功能:返回引數x的正切函式值
標頭檔案:math.h
tanh
原型:double tan(double x)
功能:返回引數x的雙曲正切函式值
標頭檔案:math.h
2樓:鄺培勝裔媼
c語言輸入輸出函式有很多,標準i/o函式中包含了如下幾個常用的函式:
scanf,printf,getc,putc,getchar,putchar,gets,puts,fgets,fputs,fgetc,fputc,fscanf,fprintf等.
intgetc(file
*fp)
getc主要是從檔案中讀出一個字元.常用的判斷檔案是否讀取結束的語句為
(ch=
getc(fp))
!=eof.eof為檔案結束標誌,定義在stdio.
h中,就像exit_success,exit_failure定義在stdlib.h中一樣,檔案也可以被理解為一種流,所以當fp為stdin時,getc(stdin)就等同於getchar()了.
intputc(int
ch,file
*fp)
putc主要是把字元ch寫到檔案fp中去.如果fp為stdout,則putc就等同於putchar()了.
intgetchar(void)
getchar主要是從標準輸入流讀取一個字元.預設的標準輸入流即stdio.h中定義的stdin.
但是從輸入流中讀取字元時又涉及到緩衝的問題,所以並不是在螢幕中敲上一個字元程式就會執行,一般是通過在螢幕上敲上回車鍵,然後將回車前的字串放在緩衝區中,getchar就是在緩衝區中一個一個的讀字元.當然也可以在while迴圈中指定終止字元,如下面的語句:while
((c=
getchar())
!='#')這是以#來結束的.
intputchar(int
ch)putchar(ch)主要是把字元ch寫到標準流stdout中去.
char
*gets(char
*str)
gets主要是從標準輸入流讀取字串並回顯,讀到換行符時退出,並會將換行符省去.
intputs(char
*str)
puts主要是把字串str寫到標準流stdout中去,並會在輸出到最後時新增一個換行符.
char
*fgets(char
*str,
intnum,
file
*fp)
str是存放讀入的字元陣列指標,num是最大允許的讀入字元數,fp是檔案指標.fgets的功能是讀一行字元,該行的字元數不大於num-1.因為fgets函式會在末尾加上一個空字元以構成一個字串.
另外fgets在讀取到換行符後不會將其省略.
intfputs(char
*str,
file
*fp)
fputs將str寫入fp.fputs與puts的不同之處是fputs在列印時並不新增換行符.
intfgetc(file
*fp)
fgetc從fp的當前位置讀取一個字元.
intfputc(int
ch,file
*fp)
fputc是將ch寫入fp當前指定位置.
intfscanf(file
*fp,
char
*format,
輸入列表)
fscanf按照指定格式從檔案**讀出資料,並賦值到引數列表中.
intfprintf(file
*fp,
char
*format,
輸出列表)
fprintf將格式化資料寫入流式檔案中.
資料塊讀寫函式
fread
(buffer,size,count,fp);
fwrite(buffer,size,count,fp);
引數說明:
buffer:是一個指標。
對fread
來說,它是讀入資料的存放地址。
對fwrite來說,是要輸出資料的地址(均指起始地址)。
size:
要讀寫的位元組數。
count:
要進行讀寫多少個size位元組的資料項。
fp:檔案型指標。
c語言中函式型別有幾種,簡述c語言中函式共有哪幾種型別,各有何區別?
一般包括字元庫函式,數學函式,目錄函式,程序函式,診斷函式,操作函式等。字元庫函式所在函式庫為ctype.h 數學函式所在函式庫為math.h stdio.h string.h float.h 目錄函式所在函式庫為dir.h dos.h 程序函式所在函式庫為stdlib.h process.h。診斷...
c語言中函式指標用法,C語言中函式指標用法
函式在記憶體中有一個物理位置,而這個位置是可以賦給一個指標的。一零點函式的地址就是該函式的入口點。因此,函式指標可被用來呼叫一個函式。函式的地址是用不帶任何括號或引數的函式名來得到的。這很類似於陣列地址的得到方法,即,在只有陣列名而無下標是就得到陣列地址。怎樣說明一個函式指標變數呢 為了說明一個變數...
c語言中的strlen函式,C語言中的strlen函式
冰 vs 霰 strlen是測量字串長度的 char d 和char a china char b 是等價的 是陣列的表示形式 而char c 卻是字元陣列所以並不能得到結果 strlen函式測量字串中字元個數,不包括結尾的 0 字元,你的 char c沒有結尾的 0 不是合法的字串,所以結果不對 ...