C語(yǔ)言庫(kù)函數(shù)參考手冊(cè)
《C語(yǔ)言庫(kù)函數(shù)參考手冊(cè)》由會(huì)員分享,可在線(xiàn)閱讀,更多相關(guān)《C語(yǔ)言庫(kù)函數(shù)參考手冊(cè)(44頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、 C 語(yǔ)言庫(kù)函數(shù)參考手冊(cè) 轉(zhuǎn)載說(shuō)明:可能有些函數(shù)已經(jīng)過(guò)時(shí),但從學(xué)習(xí)的角度來(lái)看,還是有一定的參考價(jià)值。 分類(lèi)函數(shù) , 所在函數(shù)庫(kù)為 ctype.h int isalpha(int ch) 若 ch 是字母 (A-Z,a-z) 返回非 0 值, 否則返回 0 int isalnum(int ch) 若 ch 是字母 (A-Z,a-z) 或數(shù)字 (0-9) 返回非 0 值, 否則返回 0 int isascii(int ch) 若 ch 是字符 (ASCII 碼中
2、的 0-127) 返回非 0 值 , 否則返回 0 int iscntrl(int ch) 若 ch 是作廢字符 (0x7F) 或普通控制字符 (0x00-0x1F) 返回非 0 值, 否則返回 0 int isdigit(int ch) 若 ch 是數(shù)字 (0-9) 返回非 0 值, 否則返回 0 int isgraph(int ch) 若 ch 是可打印字符 ( 不含空格 )(0x21-0x7E) 返回非 0 值, 否則返回 0 int islower(int ch) 若 ch 是小寫(xiě)字母 (a-z) 返回非 0 值,
3、 否則返回 0 int isprint(int ch) 若 ch 是可打印字符 ( 含空格 )(0x20-0x7E) 返回非 0 值 , 否則返回 0 int ispunct(int ch) 若 ch 是標(biāo)點(diǎn)字符 (0x00-0x1F) 返回非 0 值 , 否則返回 0 int isspace(int ch) 若 ch 是空格 ( ), 水平制表符 (\t), 回車(chē)符 (\r), 走紙換行 (\f), 垂直制表符 (\v), 換行符 (\n) 返回非 0 值, 否則返回 0 int isupper(int ch) 若 ch
4、 是大寫(xiě)字母 (A-Z) 返回非 0 值, 否則返回 0 int isxdigit(int ch) 若 ch 是 16 進(jìn)制數(shù) (0-9,A-F,a-f) 返回非 0 值, 否則返回 0 int tolower(int ch) 若 ch 是大寫(xiě)字母 (A-Z) 返回相應(yīng)的小寫(xiě)字母 (a-z) int toupper(int ch) 若 ch 是小寫(xiě)字母 (a-z) 返回相應(yīng)的大寫(xiě)字母 (A-Z) 數(shù)學(xué)函數(shù) , 所在函數(shù)庫(kù)為 math.h 、stdlib.h 、string.h 、 float.h
5、 int abs(int i) 返回整型參數(shù) i 的絕對(duì)值 double cabs(struct complex znum) 返回復(fù)數(shù) znum 的絕對(duì)值 double fabs(double x) 返回雙精度參數(shù) x 的絕對(duì)值 long labs(long n) 返回長(zhǎng)整型參數(shù) n 的絕對(duì)值 double exp(double x) 返回指數(shù)函數(shù) ex 的值 double frexp(double value,int *eptr) 返回 va
6、lue=x*2n 中 x 的值 ,n 存貯在 eptr 中 double ldexp(double value,int exp); 返回 value*2exp 的值 double log(double x) 返回 logex 的值 double log10(double x) 返回 log10x 的值 double pow(double x,double y) 返回 xy 的值 double pow10(int p) 返回 10p 的值 double sqrt
7、(double x) 返回 + √ x 的值 double acos(double x) 返回 x 的反余弦 cos-1(x) 值,x 為弧度 double asin(double x) 返回 x 的反正弦 sin-1(x) 值,x 為弧度 double atan(double x) 返回 x 的反正切 tan-1(x) 值,x 為弧度 double atan2(double y,double x) 返回 y/x 的反正切 tan-1(x) 值 ,y 的 x 為弧度 doub
8、le cos(double x) double sin(double x) double tan(double x) double cosh(double x) double sinh(double x) double tanh(double x) double hypot(double x,double y) x double ceil(double x) double floor(double x) void srand(unsigned seed) int rand() double poly(double x,int n,double
9、 c[]) double modf(double value,double *iptr) double fmod(double x,double y) double frexp(double value,int *eptr) double atof(char *nptr) double atoi(char *nptr) double atol(char *nptr) char *ecvt(double value,int ndigit,int *decpt,int *sign) 返回 x 的余弦 cos(x) 值 ,x 為弧度 返回
10、x 的正弦 sin(x) 值 ,x 為弧度 返回 x 的正切 tan(x) 值 ,x 為弧度 返回 x 的雙曲余弦 cosh(x) 值 ,x 為弧度 返回 x 的雙曲正弦 sinh(x) 值 ,x 為弧度 返回 x 的雙曲正切 tanh(x) 值 ,x 為弧度 返回直角三角形斜邊的長(zhǎng)度 (z), 和 y 為直角邊的長(zhǎng)度 ,z2=x2+y2 返回不小于 x 的最小整數(shù) 返回不大于 x 的最大整數(shù) 初始化隨機(jī)數(shù)發(fā)生器 產(chǎn)生一個(gè)隨機(jī)數(shù)并返回這個(gè)數(shù) 從參數(shù)產(chǎn)生一個(gè)多項(xiàng)式 將雙精度數(shù) value 分解成尾數(shù)和階
11、 返回 x/y 的余數(shù) 將雙精度數(shù) value 分成尾數(shù)和階 將字符串 nptr 轉(zhuǎn)換成浮點(diǎn)數(shù)并返回這個(gè)浮點(diǎn)數(shù)將字符串 nptr 轉(zhuǎn)換成整數(shù)并返回這個(gè)整數(shù) 將字符串 nptr 轉(zhuǎn)換成長(zhǎng)整數(shù)并返回這個(gè)整數(shù) 將浮點(diǎn)數(shù) value 轉(zhuǎn)換成字符串并返回該字符串 char *fcvt(double value,int ndigit,int *decpt,int *sign) 將浮點(diǎn)數(shù) value 轉(zhuǎn)換成字符串并返回該字符串 char *gcvt(double value,int ndigit,char *buf) 將數(shù) value 轉(zhuǎn)換成字符串并存于
12、 buf 中 , 并返回 buf 的指針 char *ultoa(unsigned long value,char *string,int radix) 將無(wú)符號(hào)整型數(shù) value 轉(zhuǎn)換成字符串并返回該字符串 ,radix 為轉(zhuǎn)換時(shí)所用基數(shù) char *ltoa(long value,char *string,int radix) 將長(zhǎng)整型數(shù) value 轉(zhuǎn)換成字符串并返回該字符串 ,radix 為轉(zhuǎn)換時(shí)所用基數(shù) char *itoa(int value,char *string,int radix) 將整數(shù) value 轉(zhuǎn)換成字符串存入 string,radi
13、x 為轉(zhuǎn)換時(shí)所用基數(shù) double atof(char *nptr) 將字符串 nptr 轉(zhuǎn)換成雙精度數(shù) , 并返回這個(gè)數(shù) , 錯(cuò)誤返回 0 int atoi(char *nptr) 將字符串 nptr 轉(zhuǎn)換成整型數(shù) , 并返回這個(gè)數(shù) , 錯(cuò)誤返回 0 long atol(char *nptr) 將字符串 nptr 轉(zhuǎn)換成長(zhǎng)整型數(shù) , 并返回這個(gè)數(shù) , 錯(cuò)誤返回 0 double strtod(char *str,char **endptr) 將字符串 str 轉(zhuǎn)換成雙精度數(shù) , 并返回這個(gè)數(shù) , long strtol(char *str,char **
14、endptr,int base) 將字符串 str 轉(zhuǎn)換成長(zhǎng)整型數(shù) , 并返回這個(gè)數(shù) , int matherr(struct exception *e) 用戶(hù)修改數(shù)學(xué)錯(cuò)誤返回信息函數(shù) ( 沒(méi)有必要使用 ) double _matherr(_mexcep why,char *fun,double *arg1p, double *arg2p,double retval) 用戶(hù)修改數(shù)學(xué)錯(cuò)誤返回信息函數(shù) ( 沒(méi)有必要使用 ) unsigned int _clear87() 清除浮點(diǎn)狀態(tài)字并返回原來(lái)的浮點(diǎn)狀態(tài) void _fpreset() 重新
15、初使化浮點(diǎn)數(shù)學(xué)程序包 unsigned int _status87() 返回浮點(diǎn)狀態(tài)字 目錄函數(shù) , 所在函數(shù)庫(kù)為 dir.h 、dos.h int chdir(char *path) 使指定的目錄 path (如 :"C:\\WPS" )變成當(dāng)前的工作目錄 , 成 功返回 0 int findfirst(char *pathname,struct ffblk *ffblk,int attrib)
16、 查找指定的文件 , 成功 返回 0 pathname 為指定的目錄名和文件名 , 如 "C:\\WPS\\TXT" ffblk 為指定的保存文件信息的一個(gè)結(jié)構(gòu) , 定義如下 : ┏━━━━━━━━━━━━━━━━━━┓ ┃ struct ffblk ┃ ┃ { ┃ ┃ char ff_reserved[21]; /*DOS 保留字 */ ┃ ┃ char ff_attrib; /* 文件屬性 */ ┃ ┃ int ff_ftime;
17、/* 文件時(shí)間 */ ┃ ┃ int ff_fdate; /* 文件日期 */ ┃ ┃ long ff_fsize; /* 文件長(zhǎng)度 */ ┃ ┃ char ff_name[13]; /* 文件名 */ ┃ ┃ } ┃ ┗━━━━━━━━━━━━━━━━━━┛ attrib 為文件屬性 , 由以下字符代表 ┏━━━━━━━━━┳━━━━━━━━┓ ┃ FA_RDONLY 只讀文件┃ FA_LABEL 卷標(biāo)號(hào)┃ ┃ FA_HIDDEN 隱藏文件┃ FA_DIREC 目錄 ┃
18、 ┃ FA_SYSTEM 系統(tǒng)文件┃ FA_ARCH 檔案 ┃ ┗━━━━━━━━━┻━━━━━━━━┛ 例 : struct ffblk ff; findfirst("*.wps",&ff,FA_RDONLY); int findnext(struct ffblk *ffblk) 取匹配 finddirst 的文件 , void fumerge(char *path,char *drive,char *dir,char *name,char *ext) 此函數(shù)通過(guò)盤(pán)符 drive(C: 、
19、A: 等 ), 路徑 dir(\TC 、 \BC\LIB 等), 文件名 name(TC 、 WPS等), 擴(kuò)展名 ext(.EXE 、 .COM 等 ) 組成一個(gè)文件名 成功返回 0 存與 path 中 . int fnsplit(char *path,char *drive,char *dir,char *name,char *ext) 此函數(shù)將文件名 path 分解成盤(pán)符 drive(C: 、 A: 等 ), 路徑 dir(\TC 、\BC
20、\LIB 等), 文件名 name(TC 、 WPS等), 擴(kuò)展名 ext(.EXE 、 .COM 等 ), 并分別存入相應(yīng)的變量中 . int getcurdir(int drive,char *direc) 此函數(shù)返回指定驅(qū)動(dòng)器的當(dāng)前工作目錄名稱(chēng) drive 指定的驅(qū)動(dòng)器 (0= 當(dāng)前 ,1=A,2=B,3=C 等 ) direc 保存指定驅(qū)動(dòng)器當(dāng)前工作路徑的變量 成功返回 0 char *getcwd(char *buf,iint n) 此函數(shù)取當(dāng)前工作目錄并存入 buf 中 , 直到 n 個(gè)字 節(jié)長(zhǎng)
21、為為止 . 錯(cuò)誤返回 NULL int getdisk() 取當(dāng)前正在使用的驅(qū)動(dòng)器 , 返回一個(gè)整數(shù) (0=A,1=B,2=C 等) int setdisk(int drive) 置要使用的 器 drive(0=A,1=B,2=C 等 ), 返回可使用 器 數(shù) int mkdir(char *pathname) 建立一個(gè)新的目 pathname, 成功返回 0 int rmdir(char *pathname) 除一個(gè)目 pathname,
22、 成功返回 0 char *mktemp(char *template) 構(gòu)造一個(gè)當(dāng)前目 上沒(méi)有的文件名并存于 template中 char *searchpath(char *pathname) 利用 MSDOS找出文件 filename 所在路徑 , , 此函數(shù)使用 DOS的 PATH 量 , 未找到文件返回 NULL 程函數(shù) , 所在函數(shù) stdlib.h 、process.h void abort() 此函數(shù)通 用具有出口代 3 的_exit 寫(xiě)一個(gè) 止信息于
23、 stderr , 并異常 止程序。無(wú)返回 int exec ?裝入和運(yùn)行其它程序 int execl( char *pathname,char *arg0,char *arg1, int execle( char *pathname,char *arg0,char *arg1, char *argn,NULL,char *envp[]) int execlp( char *pathname,char *arg0,char *arg1, int execlpe(char *path
24、name,char *arg0,char *arg1, int execv( char *pathname,char *argv[]) int execve( char *pathname,char *argv[],char *envp[]) int execvp( char *pathname,char *argv[]) int execvpe(char *pathname,char *argv[],char *envp[]) exec 函數(shù)族裝入并運(yùn)行程序 pathname ,并將參數(shù) arg0(arg1,arg2,argv[],envp[]) 子
25、程序 在 exec 函數(shù)族中 , 后 l 、 v 、p 、 e 添加到 exec 后, ? ,char *argn,NULL) ? , ? ,NULL) ?,NULL,char *envp[]) , 出 返回 -1 所指定的函數(shù)將具有某種操作能力 有后 l v e p ,函數(shù)可以利用 DOS 的 PATH 量 找子程序文件。 ,函數(shù)中被 的參數(shù)個(gè)數(shù)固定。 ,函數(shù)中被 的參數(shù)個(gè)數(shù)不固定。
26、,函數(shù) 指定參數(shù) envp ,允 改 子 程的 境, 無(wú)后 e ,子 程使用當(dāng)前程序的 境。 void _exit(int status) void exit(int status) 止當(dāng)前程序 , 但不清理 止當(dāng)前程序 , 關(guān) 所有文件 , 寫(xiě) 沖區(qū)的 出 并 用任何寄存器的 " 出口函數(shù) ", 無(wú)返回 ( 等待 出 ), int spawn ?運(yùn)行子程序 int spawnl( int mode,char *pathname,c
27、har *arg0,char *arg1, ? , char *argn,NULL) int spawnle( int mode,char *pathname,char *arg0,char *arg1, ? , char *argn,NULL,char *envp[]) int spawnlp( int mode,char *pathname,char *arg0,char *arg1, ? , char *argn,NULL) int spawnlpe(int mode,char *pathname,char *arg0,char *arg1
28、, ? , char *argn,NULL,char *envp[]) int spawnv( int mode,char *pathname,char *argv[]) int spawnve( int mode,char *pathname,char *argv[],char *envp[]) int spawnvp( int mode,char *pathname,char *argv[]) int spawnvpe(int mode,char *pathname,char *argv[],char *envp[])
29、 spawn 函數(shù)族在 mode 模式下運(yùn)行子程序 pathname, 并將參數(shù) arg0(arg1,arg2,argv[],envp[]) 傳遞給子程序 . 出錯(cuò)返回 -1 mode 為運(yùn)行模式 mode 為 P_WAIT P_NOWAIT P_OVERLAY 表示在子程序運(yùn)行完后返回本程序 表示在子程序運(yùn)行時(shí)同時(shí)運(yùn)行本程序 ( 不可用 ) 表示在本程序退出后運(yùn)行子程序 在 spawn 函數(shù)族中 , 后綴 l 、 v 、p 、e 添加到 spawn 后, 所指定的函數(shù)將具有某種操作能力
30、 有后綴 p 時(shí), 函數(shù)利用 DOS 的 PATH 查找子程序文件 l 時(shí) , 函數(shù)傳遞的參數(shù)個(gè)數(shù)固定 . v 時(shí) , 函數(shù)傳遞的參數(shù)個(gè)數(shù)不固定 . e 時(shí) , 指定參數(shù) envp 可以傳遞給子程序 , 允許改變子程序運(yùn)行環(huán)境 . 當(dāng)無(wú)后綴 e 時(shí) , 子程序使用本程序的環(huán)境 . int system(char *command) 將 MSDOS命令 command 傳遞給 DOS 執(zhí)行 轉(zhuǎn)換子程序 , 函數(shù)庫(kù)為 math.h 、 stdlib.h 、 ctype.h 、float.h cha
31、r *ecvt(double value,int ndigit,int *decpt,int *sign) 將浮點(diǎn)數(shù) value 轉(zhuǎn)換成字符串并返回該字符串 char *fcvt(double value,int ndigit,int *decpt,int *sign) 將浮點(diǎn)數(shù) value 轉(zhuǎn)換成字符串并返回該字符串 char *gcvt(double value,int ndigit,char *buf) 將數(shù) value 轉(zhuǎn)換成字符串并存于 buf
32、 中 , 并返回 buf 的指針 char *ultoa(unsigned long value,char *string,int radix) 將無(wú)符號(hào)整型數(shù) value 轉(zhuǎn)換成字符串并返回該字符串 ,radix為轉(zhuǎn)換時(shí)所用基數(shù) char *ltoa(long value,char *string,int radix) 將長(zhǎng)整型數(shù) value 轉(zhuǎn)換成字符串并返回該字符串 ,radix 為轉(zhuǎn)換時(shí)所用基數(shù) char *itoa(int value,char *string,int radix)
33、 將整數(shù) value 轉(zhuǎn)換成字符串存入 string,radix 為轉(zhuǎn)換時(shí)所用基數(shù) double atof(char *nptr) 將字符串 nptr 轉(zhuǎn)換成雙精度數(shù) , 并返回這個(gè)數(shù) , 錯(cuò)誤返回 0 int atoi(char *nptr) 將字符串 nptr 轉(zhuǎn)換成整型數(shù) , 并返回這個(gè)數(shù) , 錯(cuò)誤返回 0 long atol(char *nptr) 將字符串 nptr 轉(zhuǎn)換成長(zhǎng)整型數(shù) , 并返回這個(gè)數(shù) , 錯(cuò)誤返回 0 double strtod(char *str,char **endp
34、tr) 將字符串 str 轉(zhuǎn)換成雙精度數(shù) , 并返回這個(gè)數(shù) , long strtol(char *str,char **endptr,int base) 將字符串 str 轉(zhuǎn)換成長(zhǎng)整型數(shù) , 并返回這個(gè)數(shù) , int toascii(int c) 返回 c 相應(yīng)的 ASCII int tolower(int ch) 若 ch 是大寫(xiě)字母 (A-Z) 返回相應(yīng)的小寫(xiě)字母 (a-z) int _tolower(int ch) 返回 ch 相應(yīng)的小寫(xiě)字母 (a-z
35、) int toupper(int ch) 若 ch 是小寫(xiě)字母 (a-z) 返回相應(yīng)的大寫(xiě)字母 (A-Z) int _toupper(int ch) 返回 ch 相應(yīng)的大寫(xiě)字母 (A-Z) 斷函數(shù) , 所在函數(shù) assert.h 、math.h void assert(int test) 一個(gè) 展成 if 句那 的宏,如果 test 失 ,
36、 就 示一個(gè)信息并異常 止程序 , 無(wú)返回 void perror(char *string) 本函數(shù)將 示最近一次的 信息,格式如下: 字符串 string: 信息 char *strerror(char *str) 本函數(shù)返回最近一次的 信息 , 格式如下 : 字符串 str: 信息 int matherr(struct exception *e) 用 修改數(shù)學(xué) 返回信息函數(shù) ( 沒(méi)有必要使用 ) double _matherr(_mexcep why,char *fun,double
37、 *arg1p, double *arg2p,double retval) 用 修改數(shù)學(xué) 返回信息函數(shù) ( 沒(méi)有必要使用 ) 入 出子程序 , 函數(shù) io.h 、conio.h 、 stat.h 、 dos.h 、 stdio.h 、signal.h int kbhit() 本函數(shù)返回最近所敲的按 int fgetchar() 從控制臺(tái) ( 鍵盤(pán) ) 一個(gè)字符, 示在屏幕上 int getch() 從控制臺(tái) ( 鍵盤(pán) ) 一個(gè)字符,不 示在屏幕上 int putch() 向控制臺(tái) ( 鍵盤(pán)
38、 ) 寫(xiě)一個(gè)字符 int getchar() 從控制臺(tái) ( 鍵盤(pán) ) 一個(gè)字符, 示在屏幕上 int putchar() 向控制臺(tái) ( 鍵盤(pán) ) 寫(xiě)一個(gè)字符 int getche() 從控制臺(tái) ( 鍵盤(pán) ) 一個(gè)字符, 示在屏幕上 int ungetch(int c) 把字符 c 退回 控制臺(tái) ( 鍵盤(pán) ) char *cgets(char *string) 從控制臺(tái) ( 鍵盤(pán) ) 入字符串存于 string 中 int scanf(char *format[,argument ?
39、]) 從控制臺(tái) 入一個(gè)字符串 , 分 各個(gè)參數(shù) 行 賦值 , 使用 BIOS 行 出 int vscanf(char *format,Valist param) 從控制臺(tái) 入一個(gè)字符串 , 分 各個(gè)參數(shù) 行 賦值 , 使用 BIOS 行 出 , 參數(shù)從 Valist param 中取得 int cscanf(char *format[,argument ?]) 從控制臺(tái) 入一個(gè)字符串 , 分 各個(gè)參數(shù) 行 賦值 , 直接 控制臺(tái)作操作 , 比如 示器在 示 字符 即 直接寫(xiě) 方式 示
40、 int sscanf(char *string,char *format[,argument, ? ]) 通 字符串 string, 分 各個(gè) 參數(shù) 行 int vsscanf(char *string,char *format,Vlist param) 通 字符串 string, 分 各個(gè) 參數(shù) 行 , 參數(shù)從 Vlist param 中取得 int puts(char *string) 關(guān)一個(gè)字符串 string 控制臺(tái) ( 示器 ), 使用 BI
41、OS 行 出 void cputs(char *string) 送一個(gè)字符串 string 控制臺(tái) ( 示器 ), 直接 控制臺(tái)作操作 , 比如 示器即 直接寫(xiě) 方式 示 int printf(char *format[,argument, ?]) 送格式化字符串 出 控制臺(tái) ( 示器 ) 使用 BIOS 行 出 int vprintf(char *format,Valist param) 送格式化字符串 出 控制臺(tái) ( 示器 ) 使用 BIOS
42、 行 出 , 參數(shù)從 Valist param 中取得 int cprintf(char *format[,argument, ? ]) 送格式化字符串 出 控制臺(tái) ( 示器 ), 直接 控制臺(tái)作操作 , 比如 示器即 直接寫(xiě) 方式 示 int vcprintf(char *format,Valist param) 送格式化字符串 出 控制臺(tái) ( 示器 ), 直接 控制臺(tái)作操作 , 比如 示器即 直接寫(xiě) 方式 示
43、 , 參數(shù)從 Valist param 中取得 int sprintf(char *string,char *format[,argument, 將字符串 string 的內(nèi)容重新寫(xiě) 格式化后的字符串 int vsprintf(char *string,char *format,Valist param) 將字符串 string 的內(nèi)容重新寫(xiě) 格式化后的字符串 int rename(char *oldname,char *newname) 將文件 int ioctl(int handle,int cmd[,int *argdx,int a
44、rgcx]) ? ]) , 參數(shù)從 oldname Valist param 的名稱(chēng)改 中取得 newname 本函數(shù)是用來(lái)控制 入 / 出 的, 下表: ┌───┬────────────────────────────┐ │cmd 值 │功能 │ ├───┼────────────────────────────┤ │ 0 │取出 信息 │ │ 1 │ 置 信息
45、 │ │ 2 │把 argcx 字 入由 argdx 所指的地址 │ │ 3 │在 argdx 所指的地址寫(xiě) argcx 字 │ │ 4 │除把 handle 當(dāng)作 號(hào) (0= 當(dāng)前 ,1=A, 等) 之外 , 均和 cmd=2 一 │ │ 5 │除把 handle 當(dāng)作 號(hào) (0= 當(dāng)前 ,1=A, 等) 之外 , 均和 cmd=3 一 │ │ 6 │取 入狀 │ │ 7 │取 出狀 │ │ 8 │ 可 性 ; 只 于 DOS 3.x
46、 │ │ 11 │置分享沖突的重算 數(shù) ; 只 DOS 3.x │ └───┴────────────────────────────┘ int (*ssignal(int sig,int(*action)())() 行 件信號(hào) ( 沒(méi)必要使用 ) int gsignal(int sig) 行 件信號(hào) ( 沒(méi)必要使用 ) int _open(char *pathname,int access) 或?qū)懘蜷_(kāi)一個(gè)文件 , 按后按 access 來(lái)確定是 文件 是寫(xiě)文件 ,access 下表 ┌──
47、────┬────────────────────┐ │access 值 │意 │ ├──────┼────────────────────┤ │O_RDONLY │ 文件 │ │O_WRONLY │寫(xiě)文件 │ │O_RDWR │即 也寫(xiě) │ │O_NOINHERIT │若文件沒(méi)有 子程序 , 被包含 │ │O_DENYALL │只允 當(dāng)前 理必 存取的文件 │ │O_DENYWRITE │只允 從任何其它打開(kāi)的文件 │ │O_DENYREAD │只允 從任何其它打開(kāi)的文件寫(xiě) │ │O_DENYNONE
48、 │允 其它共享打開(kāi)的文件 │ └──────┴────────────────────┘ int open(char *pathname,int access[,int permiss]) 或?qū)懘蜷_(kāi)一個(gè)文件 按后按 access 來(lái)確定是 文件 是寫(xiě)文件 ,access 下表 , ┌────┬────────────────────┐ │access 值│意義 │ ├────┼────────────────────┤ │O_RDONLY│讀文件 │ │O_WRONLY│寫(xiě)文件 │ │O
49、_RDWR │即讀也寫(xiě) │ │O_NDELAY│沒(méi)有使用 ; 對(duì) UNIX 系統(tǒng)兼容 │ │O_APPEND│即讀也寫(xiě) , 但每次寫(xiě)總是在文件尾添加 │ │O_CREAT │若文件存在 , 此標(biāo)志無(wú)用 ; 若不存在 , 建新文件 │ │O_TRUNC │若文件存在 , 則長(zhǎng)度被截為 0, 屬性不變 │ │O_EXCL │未用 ; 對(duì) UNIX 系統(tǒng)兼容 │ │O_BINARY │此標(biāo)志可顯示地給出以二進(jìn)制方式打開(kāi)文件 │ │O_TEXT │此標(biāo)志可用于顯示地給出以文本方式打開(kāi)文件│ └────┴────────────────────┘ p
50、ermiss 為文件屬性 , 可為以下值 : S_IWRITE 允許寫(xiě) S_IREAD 允許讀 S_IREAD|S_IWRITE 允許讀、寫(xiě) int creat(char *filename,int permiss) 建立一個(gè)新文件 filename ,并設(shè)定 讀寫(xiě)性。 permiss 為文件讀寫(xiě)性,可以為以下值 S_IWRITE 允許寫(xiě) S_IREAD int _creat(char *filename,int attrib) 允許讀 S_IREAD|S_IWRITE 建立一個(gè)新文件 允許讀、寫(xiě)
51、 filename ,并設(shè)定文件 屬性。 attrib 為文件屬性,可以為以下值 FA_RDONLY 只讀 FA_HIDDEN 隱藏 FA_SYSTEM 系統(tǒng) int creatnew(char *filenamt,int attrib) 建立一個(gè)新文件 filename ,并設(shè)定文件 屬性。 attrib 為文件屬性,可以為以下值 FA_RDONLY 只讀 FA_HIDDEN 隱藏 FA_SYSTEM 系統(tǒng) in
52、t creattemp(char *filenamt,int attrib) 建立一個(gè)新文件 filename ,并設(shè)定文件 屬性。 attrib 為文件屬性,可以為以下值 FA_RDONLY 只讀 FA_HIDDEN 隱藏 FA_SYSTEM 系統(tǒng) int read(int handle,void *buf,int nbyte) 從文件號(hào)為 handle 的文件中讀 nbyte 個(gè)字符 存入 buf 中 int _read(int handle,void *buf,int nbyte) 從文件號(hào)為 handle
53、 的文件中讀 nbyte 個(gè)字符 存入 buf 中, 直接調(diào)用 MSDOS進(jìn)行操作 . int write(int handle,void *buf,int nbyte) 將 buf 中的 nbyte 個(gè)字符寫(xiě)入文件號(hào) 為 handle 的文件中 int _write(int handle,void *buf,int nbyte) 將 buf 中的 nbyte 個(gè)字符寫(xiě)入文件號(hào) 為 handle 的文件中 int dup(int handle) 復(fù)制一個(gè)文件處理指針 handle, 返回這個(gè)指針 int dup2(int
54、handle,int newhandle) 復(fù)制一個(gè)文件處理指針 handle 到 newhandle int eof(int *handle) 檢查文件是否結(jié)束 , 結(jié)束返回 1, 否則返回 0 long filelength(int handle) 返回文件長(zhǎng)度, handle 為文件號(hào) int setmode(int handle,unsigned mode) 本函數(shù)用來(lái)設(shè)定文件號(hào)為 handle 的文件的打 開(kāi)方式 int getftime(int handle,struct ftime *ft
55、ime) 讀取文件號(hào)為 handle 的文件的時(shí)間, 并將文件時(shí)間存于 ftime 結(jié)構(gòu)中,成功返回 0,ftime 結(jié)構(gòu)如下: ┌─────────────────┐ │struct ftime │ │{ │ │ unsigned ft_tsec:5; /* 秒 */ │ │ unsigned ft_min:6; /* 分 */ │ │ unsigned ft_hour:5; /* 時(shí) */
56、 │ │ unsigned ft_day:5; /* 日 */ │ │ unsigned ft_month:4;/* 月 */ │ │ unsigned ft_year:1; /* 年 -1980*/ │ │} │ └─────────────────┘ int setftime(int handle,struct ftime *ftime) 重寫(xiě)文件號(hào)為 handle 的文件時(shí)間 , 新時(shí)間在結(jié)構(gòu) ftime 中 . 成功返
57、回 0. 結(jié)構(gòu) ftime 如下 : ┌─────────────────┐ │struct ftime │ │{ │ │ unsigned ft_tsec:5; /* 秒 */ │ │ unsigned ft_min:6; /* 分 */ │ │ unsigned ft_hour:5; /* 時(shí) */ │ │ unsigned ft_day:5; /* 日 */ │ │ un
58、signed ft_month:4;/* 月 */ │ │ unsigned ft_year:1; /* 年 -1980*/ │ │} │ └─────────────────┘ long lseek(int handle,long offset,int fromwhere) 本函數(shù)將文件號(hào)為 handle 的文件 的指針移到 fromwhere 后的第 offset 個(gè)字節(jié)處 . SEEK_SET 文件開(kāi)關(guān) SEEK_CUR 當(dāng)前位置 SEEK
59、_END 文件尾 long tell(int handle) 本函數(shù)返回文件號(hào)為 handle 的文件指針 , 以字節(jié)表示 int isatty(int handle) 本函數(shù)用來(lái)取設(shè)備 handle 的類(lèi)型 int lock(int handle,long offset,long length) 對(duì)文件共享作封鎖 int unlock(int handle,long offset,long length) 打開(kāi)對(duì)文件共享的封鎖 int close(int handle) 關(guān)閉 handle
60、 所表示的文件處理 ,handle 是從 _creat 、 creat 、 creatnew 、creattemp 、 dup 、 dup2 、 _open 、 open 中的一個(gè)處調(diào)用獲得的文件處理 成功返回 0 否則返回 -1, 可用于 UNIX 系統(tǒng) int _close(int handle) 關(guān)閉 handle 所表示的文件處理 ,handle 是從 _creat 、 creat 、 creatnew 、creattemp 、 dup 、 dup2 、_open 、open 中的一個(gè)處調(diào)用獲得的文件
61、處理 成功返回 0 否則返回 -1, 只能用于 MSDOS系統(tǒng) FILE *fopen(char *filename,char *type) 打開(kāi)一個(gè)文件 filename, 打開(kāi)方式為 type , 并返回這個(gè)文件指針, type 可為以下字符串加上后綴 ┌──┬────┬───────┬────────┐ │type │讀寫(xiě)性 │文本 /2 進(jìn)制文件│建新 / 打開(kāi)舊文件 │ ├──┼────┼───────┼────────┤ │r │讀 │文本 │打開(kāi)舊的文件 │ │w │寫(xiě) │文本
62、
│建新文件
│
│a
│添加
│文本
│有就打開(kāi)無(wú) 建新│
│r+
│ / 寫(xiě)
│不限制
│打開(kāi)
│
│w+
│ / 寫(xiě)
│不限制
│建新文件
│
│a+
│ / 添加 │不限制
│有就打開(kāi)無(wú) 建新│
└──┴────┴───────┴────────┘
可加的后 t 、 b 。加 b 表示文件以二 制形式 行操作,
t 沒(méi)必要使用
例: ┌──────────────────┐
│ #include
63、 │ { │ │ FILE *fp; │ │ fp=fopen("C:\\WPS\\WPS.EXE","r+b"); │ └──────────────────┘ FILE *fdopen(int ahndle,char *type) FILE *freopen(char *filename,char *type,FILE *stream) int getc(FILE *stream) 從流 stre
64、am 中 一個(gè)字符,并返回 個(gè)字符 int putc(int ch,FILE *stream) 向流 stream 寫(xiě)入一個(gè)字符 ch int getw(FILE *stream) 從流 stream 入一個(gè)整數(shù), 返回 EOF int putw(int w,FILE *stream) 向流 stream 寫(xiě)入一個(gè)整數(shù) int ungetc(char c,FILE *stream) 把字符 c 退回 流 stream ,下一次 的字符將是 c int fgetc(
65、FILE *stream) 從流 stream 一個(gè)字符,并返回 個(gè)字符 int fputc(int ch,FILE *stream) 將字符 ch 寫(xiě)入流 stream 中 char *fgets(char *string,int n,FILE *stream) 從流 stream 中 n 個(gè)字符存入 string 中 int fputs(char *string,FILE *stream) 將字符串 string 寫(xiě)入流 stream 中 int fread(void *ptr,int siz
66、e,int nitems,FILE *stream) 從流 stream 中 入 nitems 個(gè) 度 size 的字符串存入 ptr 中 int fwrite(void *ptr,int size,int nitems,FILE *stream) 向流 stream 中寫(xiě)入 nitems 個(gè) 度 size 的字符串 , 字符串在 ptr 中 int fscanf(FILE *stream,char *format[,argument, ? ]) 以格式化形式從流 stream 中 入一個(gè)字符串 int vfscanf(FILE *stream,char *format
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 第七章-透射電子顯微鏡
- 群落的結(jié)構(gòu)(課件)
- 焊接基礎(chǔ)知識(shí)
- 水文地質(zhì)學(xué)課件
- 某公司員工工傷安全管理規(guī)定
- 消防培訓(xùn)課件:安全檢修(要點(diǎn))
- 某公司安全生產(chǎn)考核與獎(jiǎng)懲辦法范文
- 安全作業(yè)活動(dòng)安全排查表
- 某公司危險(xiǎn)源安全辨識(shí)、分類(lèi)和風(fēng)險(xiǎn)評(píng)價(jià)、分級(jí)辦法
- 某公司消防安全常識(shí)培訓(xùn)資料
- 安全培訓(xùn)資料:危險(xiǎn)化學(xué)品的類(lèi)別
- 中小學(xué)寒假學(xué)習(xí)計(jì)劃快樂(lè)度寒假充實(shí)促成長(zhǎng)
- 紅色插畫(huà)風(fēng)輸血相關(guān)知識(shí)培訓(xùn)臨床輸血流程常見(jiàn)輸血不良反應(yīng)
- 14.應(yīng)急救援隊(duì)伍訓(xùn)練記錄
- 某公司各部門(mén)及人員安全生產(chǎn)責(zé)任制