锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
]]>
char *ecvt(double value,int ndigit,int *decpt,int *sign)
灝嗘誕鐐規(guī)暟value杞崲鎴愬瓧絎︿覆騫惰繑鍥炶瀛楃涓?br />
char *fcvt(double value,int ndigit,int *decpt,int *sign)
灝嗘誕鐐規(guī)暟value杞崲鎴愬瓧絎︿覆騫惰繑鍥炶瀛楃涓?br />
char *gcvt(double value,int ndigit,char *buf)
灝嗘暟value杞崲鎴愬瓧絎︿覆騫跺瓨浜巄uf涓?騫惰繑鍥瀊uf鐨勬寚閽?br />
char *ultoa(unsigned long value,char *string,int radix)
灝嗘棤絎﹀彿鏁村瀷鏁皏alue杞崲鎴愬瓧絎︿覆騫惰繑鍥炶瀛楃涓?radix涓鴻漿鎹㈡椂鎵鐢ㄥ熀鏁?br />
char *ltoa(long value,char *string,int radix)
灝嗛暱鏁村瀷鏁皏alue杞崲鎴愬瓧絎︿覆騫惰繑鍥炶瀛楃涓?radix涓鴻漿鎹㈡椂鎵鐢ㄥ熀鏁?br />
char *itoa(int value,char *string,int radix)
灝嗘暣鏁皏alue杞崲鎴愬瓧絎︿覆瀛樺叆string,radix涓鴻漿鎹㈡椂鎵鐢ㄥ熀鏁?br />
double atof(char *nptr) 灝嗗瓧絎︿覆nptr杞崲鎴愬弻綺懼害鏁?騫惰繑鍥炶繖涓暟,閿欒榪斿洖0
int atoi(char *nptr) 灝嗗瓧絎︿覆nptr杞崲鎴愭暣鍨嬫暟, 騫惰繑鍥炶繖涓暟,閿欒榪斿洖0
long atol(char *nptr) 灝嗗瓧絎︿覆nptr杞崲鎴愰暱鏁村瀷鏁?騫惰繑鍥炶繖涓暟,閿欒榪斿洖0
double strtod(char *str,char **endptr)灝嗗瓧絎︿覆str杞崲鎴愬弻綺懼害鏁?騫惰繑鍥炶繖涓暟,
long strtol(char *str,char **endptr,int base)灝嗗瓧絎︿覆str杞崲鎴愰暱鏁村瀷鏁?
騫惰繑鍥炶繖涓暟,
int toascii(int c) 榪斿洖c鐩稿簲鐨凙SCII
int tolower(int ch) 鑻h鏄ぇ鍐欏瓧姣?'A'-'Z')榪斿洖鐩稿簲鐨勫皬鍐欏瓧姣?'a'-'z')
int _tolower(int ch) 榪斿洖ch鐩稿簲鐨勫皬鍐欏瓧姣?'a'-'z')
int toupper(int ch) 鑻h鏄皬鍐欏瓧姣?'a'-'z')榪斿洖鐩稿簲鐨勫ぇ鍐欏瓧姣?'A'-'Z')
int _toupper(int ch) 榪斿洖ch鐩稿簲鐨勫ぇ鍐欏瓧姣?'A'-'Z')
璇婃柇鍑芥暟,鎵鍦ㄥ嚱鏁板簱涓篴ssert.h銆乵ath.h
void assert(int test) 涓涓墿灞曟垚if璇彞閭f牱鐨勫畯錛屽鏋渢est嫻嬭瘯澶辮觸錛?br />
灝辨樉紺轟竴涓俊鎭茍寮傚父緇堟紼嬪簭,鏃犺繑鍥炲?br />
void perror(char *string) 鏈嚱鏁板皢鏄劇ず鏈榪戜竴嬈$殑閿欒淇℃伅錛屾牸寮忓涓嬶細(xì)
瀛楃涓瞫tring:閿欒淇℃伅
char *strerror(char *str) 鏈嚱鏁拌繑鍥炴渶榪戜竴嬈$殑閿欒淇℃伅,鏍煎紡濡備笅:
瀛楃涓瞫tr:閿欒淇℃伅
int matherr(struct exception *e)
鐢ㄦ埛淇敼鏁板閿欒榪斿洖淇℃伅鍑芥暟(娌℃湁蹇呰浣跨敤)
double _matherr(_mexcep why,char *fun,double *arg1p,
double *arg2p,double retval)
鐢ㄦ埛淇敼鏁板閿欒榪斿洖淇℃伅鍑芥暟(娌℃湁蹇呰浣跨敤)
杈撳叆杈撳嚭瀛愮▼搴?鍑芥暟搴撲負(fù)io.h銆乧onio.h銆乻tat.h銆乨os.h銆乻tdio.h銆乻ignal.h
int kbhit() 鏈嚱鏁拌繑鍥炴渶榪戞墍鏁茬殑鎸夐敭
int fgetchar() 浠庢帶鍒跺彴(閿洏)璇諱竴涓瓧絎︼紝鏄劇ず鍦ㄥ睆騫曚笂
int getch() 浠庢帶鍒跺彴(閿洏)璇諱竴涓瓧絎︼紝涓嶆樉紺哄湪灞忓箷涓?br />
int putch() 鍚戞帶鍒跺彴(閿洏)鍐欎竴涓瓧絎?br />
int getchar() 浠庢帶鍒跺彴(閿洏)璇諱竴涓瓧絎︼紝鏄劇ず鍦ㄥ睆騫曚笂
int putchar() 鍚戞帶鍒跺彴(閿洏)鍐欎竴涓瓧絎?br />
int getche() 浠庢帶鍒跺彴(閿洏)璇諱竴涓瓧絎︼紝鏄劇ず鍦ㄥ睆騫曚笂
int ungetch(int c) 鎶婂瓧絎閫鍥炵粰鎺у埗鍙?閿洏)
char *cgets(char *string) 浠庢帶鍒跺彴(閿洏)璇誨叆瀛楃涓插瓨浜巗tring涓?br />
int scanf(char *format[,argument…])浠庢帶鍒跺彴璇誨叆涓涓瓧絎︿覆,鍒嗗埆瀵瑰悇涓弬鏁拌繘琛?br />
璧嬪?浣跨敤BIOS榪涜杈撳嚭
int vscanf(char *format,Valist param)浠庢帶鍒跺彴璇誨叆涓涓瓧絎︿覆,鍒嗗埆瀵瑰悇涓弬鏁拌繘琛?br />
璧嬪?浣跨敤BIOS榪涜杈撳嚭,鍙傛暟浠嶸alist param涓彇寰?br />
int cscanf(char *format[,argument…])浠庢帶鍒跺彴璇誨叆涓涓瓧絎︿覆,鍒嗗埆瀵瑰悇涓弬鏁拌繘琛?br />
璧嬪?鐩存帴瀵規(guī)帶鍒跺彴浣滄搷浣?姣斿鏄劇ず鍣ㄥ湪鏄劇ず鏃跺瓧絎︽椂鍗充負(fù)鐩存帴鍐欓鏂瑰紡鏄劇ず
int sscanf(char *string,char *format[,argument,…])閫氳繃瀛楃涓瞫tring,鍒嗗埆瀵瑰悇涓?br />
鍙傛暟榪涜璧嬪?br />
int vsscanf(char *string,char *format,Vlist param)閫氳繃瀛楃涓瞫tring,鍒嗗埆瀵瑰悇涓?br />
鍙傛暟榪涜璧嬪?鍙傛暟浠嶸list param涓彇寰?br />
int puts(char *string) 鍙戝叧涓涓瓧絎︿覆string緇欐帶鍒跺彴(鏄劇ず鍣?,
浣跨敤BIOS榪涜杈撳嚭
void cputs(char *string) 鍙戦佷竴涓瓧絎︿覆string緇欐帶鍒跺彴(鏄劇ず鍣?,
鐩存帴瀵規(guī)帶鍒跺彴浣滄搷浣?姣斿鏄劇ず鍣ㄥ嵆涓虹洿鎺ュ啓棰戞柟寮忔樉紺?br />
int printf(char *format[,argument,…]) 鍙戦佹牸寮忓寲瀛楃涓茶緭鍑虹粰鎺у埗鍙?鏄劇ず鍣?
浣跨敤BIOS榪涜杈撳嚭
int vprintf(char *format,Valist param) 鍙戦佹牸寮忓寲瀛楃涓茶緭鍑虹粰鎺у埗鍙?鏄劇ず鍣?
浣跨敤BIOS榪涜杈撳嚭,鍙傛暟浠嶸alist param涓彇寰?br />
int cprintf(char *format[,argument,…]) 鍙戦佹牸寮忓寲瀛楃涓茶緭鍑虹粰鎺у埗鍙?鏄劇ず鍣?,
鐩存帴瀵規(guī)帶鍒跺彴浣滄搷浣?姣斿鏄劇ず鍣ㄥ嵆涓虹洿鎺ュ啓棰戞柟寮忔樉紺?br />
int vcprintf(char *format,Valist param)鍙戦佹牸寮忓寲瀛楃涓茶緭鍑虹粰鎺у埗鍙?鏄劇ず鍣?,
鐩存帴瀵規(guī)帶鍒跺彴浣滄搷浣?姣斿鏄劇ず鍣ㄥ嵆涓虹洿鎺ュ啓棰戞柟寮忔樉紺?
鍙傛暟浠嶸alist param涓彇寰?br />
int sprintf(char *string,char *format[,argument,…])
灝嗗瓧絎︿覆string鐨勫唴瀹歸噸鏂板啓涓烘牸寮忓寲鍚庣殑瀛楃涓?br />
int vsprintf(char *string,char *format,Valist param)
灝嗗瓧絎︿覆string鐨勫唴瀹歸噸鏂板啓涓烘牸寮忓寲鍚庣殑瀛楃涓?鍙傛暟浠嶸alist param涓彇寰?br />
int rename(char *oldname,char *newname)灝嗘枃浠秓ldname鐨勫悕縐版敼涓簄ewname
int ioctl(int handle,int cmd[,int *argdx,int argcx])
鏈嚱鏁版槸鐢ㄦ潵鎺у埗杈撳叆/杈撳嚭璁懼鐨勶紝璇瘋涓嬭〃錛?br />
鈹屸攢鈹鈹鈹攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
鈹俢md鍊?鈹傚姛鑳?nbsp; 鈹?br />
鈹溾攢鈹鈹鈹尖攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
鈹?nbsp; 0 鈹傚彇鍑?guó)櫘惧淇℃?nbsp; 鈹?br />
鈹?nbsp; 1 鈹傝緗澶囦俊鎭?nbsp; 鈹?br />
鈹?nbsp; 2 鈹傛妸argcx瀛楄妭璇誨叆鐢盿rgdx鎵鎸囩殑鍦板潃 鈹?br />
鈹?nbsp; 3 鈹傚湪argdx鎵鎸囩殑鍦板潃鍐檃rgcx瀛楄妭 鈹?br />
鈹?nbsp; 4 鈹傞櫎鎶奾andle褰撲綔璁懼鍙?0=褰撳墠,1=A,絳?涔嬪,鍧囧拰cmd=2鏃朵竴鏍?鈹?br />
鈹?nbsp; 5 鈹傞櫎鎶奾andle褰撲綔璁懼鍙?0=褰撳墠,1=A,絳?涔嬪,鍧囧拰cmd=3鏃朵竴鏍?鈹?br />
鈹?nbsp; 6 鈹傚彇杈撳叆鐘舵?nbsp; 鈹?br />
鈹?nbsp; 7 鈹傚彇杈撳嚭鐘舵?nbsp; 鈹?br />
鈹?nbsp; 8 鈹傛祴璇曞彲鎹㈡?鍙浜嶥OS 3.x 鈹?br />
鈹?nbsp; 11 鈹傜疆鍒嗕韓鍐茬獊鐨勯噸綆楄鏁?鍙DOS 3.x 鈹?br />
鈹斺攢鈹鈹鈹粹攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
int (*ssignal(int sig,int(*action)())()鎵ц杞歡淇″彿(娌″繀瑕佷嬌鐢?
int gsignal(int sig) 鎵ц杞歡淇″彿(娌″繀瑕佷嬌鐢?
int _open(char *pathname,int access)涓鴻鎴栧啓鎵撳紑涓涓枃浠?
鎸夊悗鎸塧ccess鏉ョ‘瀹氭槸璇繪枃浠惰繕鏄啓鏂囦歡,access鍊艱涓嬭〃
鈹屸攢鈹鈹鈹鈹鈹鈹攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
鈹俛ccess鍊?nbsp; 鈹傛剰涔?nbsp; 鈹?br />
鈹溾攢鈹鈹鈹鈹鈹鈹尖攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
鈹侽_RDONLY 鈹傝鏂囦歡 鈹?br />
鈹侽_WRONLY 鈹傚啓鏂囦歡 鈹?br />
鈹侽_RDWR 鈹傚嵆璇諱篃鍐?nbsp; 鈹?br />
鈹侽_NOINHERIT 鈹傝嫢鏂囦歡娌℃湁浼犻掔粰瀛愮▼搴?鍒欒鍖呭惈 鈹?br />
鈹侽_DENYALL 鈹傚彧鍏佽褰撳墠澶勭悊蹇呴』瀛樺彇鐨勬枃浠?nbsp; 鈹?br />
鈹侽_DENYWRITE 鈹傚彧鍏佽浠庝換浣曞叾瀹冩墦寮鐨勬枃浠惰 鈹?br />
鈹侽_DENYREAD 鈹傚彧鍏佽浠庝換浣曞叾瀹冩墦寮鐨勬枃浠跺啓 鈹?br />
鈹侽_DENYNONE 鈹傚厑璁稿叾瀹冨叡浜墦寮鐨勬枃浠?nbsp; 鈹?br />
鈹斺攢鈹鈹鈹鈹鈹鈹粹攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
int open(char *pathname,int access[,int permiss])涓鴻鎴栧啓鎵撳紑涓涓枃浠?
鎸夊悗鎸塧ccess鏉ョ‘瀹氭槸璇繪枃浠惰繕鏄啓鏂囦歡,access鍊艱涓嬭〃
鈹屸攢鈹鈹鈹鈹攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
鈹俛ccess鍊尖攤鎰忎箟 鈹?br />
鈹溾攢鈹鈹鈹鈹尖攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
鈹侽_RDONLY鈹傝鏂囦歡 鈹?br />
鈹侽_WRONLY鈹傚啓鏂囦歡 鈹?br />
鈹侽_RDWR 鈹傚嵆璇諱篃鍐?nbsp; 鈹?br />
鈹侽_NDELAY鈹傛病鏈変嬌鐢?瀵筓NIX緋葷粺鍏煎 鈹?br />
鈹侽_APPEND鈹傚嵆璇諱篃鍐?浣嗘瘡嬈″啓鎬繪槸鍦ㄦ枃浠跺熬娣誨姞 鈹?br />
鈹侽_CREAT 鈹傝嫢鏂囦歡瀛樺湪,姝ゆ爣蹇楁棤鐢?鑻ヤ笉瀛樺湪,寤烘柊鏂囦歡 鈹?br />
鈹侽_TRUNC 鈹傝嫢鏂囦歡瀛樺湪,鍒欓暱搴﹁鎴負(fù)0,灞炴т笉鍙?nbsp; 鈹?br />
鈹侽_EXCL 鈹傛湭鐢?瀵筓NIX緋葷粺鍏煎 鈹?br />
鈹侽_BINARY鈹傛鏍囧織鍙樉紺哄湴緇欏嚭浠ヤ簩榪涘埗鏂瑰紡鎵撳紑鏂囦歡 鈹?br />
鈹侽_TEXT 鈹傛鏍囧織鍙敤浜庢樉紺哄湴緇欏嚭浠ユ枃鏈柟寮忔墦寮鏂囦歡鈹?br />
鈹斺攢鈹鈹鈹鈹粹攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
permiss涓烘枃浠跺睘鎬?鍙負(fù)浠ヤ笅鍊?
S_IWRITE鍏佽鍐?nbsp; S_IREAD鍏佽璇?nbsp; S_IREAD|S_IWRITE鍏佽璇匯佸啓
int creat(char *filename,int permiss) 寤虹珛涓涓柊鏂囦歡filename錛屽茍璁懼畾
璇誨啓鎬с俻ermiss涓烘枃浠惰鍐欐э紝鍙互涓轟互涓嬪?br />
S_IWRITE鍏佽鍐?nbsp; S_IREAD鍏佽璇?nbsp; S_IREAD|S_IWRITE鍏佽璇匯佸啓
int _creat(char *filename,int attrib) 寤虹珛涓涓柊鏂囦歡filename錛屽茍璁懼畾鏂囦歡
灞炴с俛ttrib涓烘枃浠跺睘鎬э紝鍙互涓轟互涓嬪?br />
FA_RDONLY鍙 FA_HIDDEN闅愯棌 FA_SYSTEM緋葷粺
int creatnew(char *filenamt,int attrib) 寤虹珛涓涓柊鏂囦歡filename錛屽茍璁懼畾鏂囦歡
灞炴с俛ttrib涓烘枃浠跺睘鎬э紝鍙互涓轟互涓嬪?br />
FA_RDONLY鍙 FA_HIDDEN闅愯棌 FA_SYSTEM緋葷粺
int creattemp(char *filenamt,int attrib) 寤虹珛涓涓柊鏂囦歡filename錛屽茍璁懼畾鏂囦歡
灞炴с俛ttrib涓烘枃浠跺睘鎬э紝鍙互涓轟互涓嬪?br />
FA_RDONLY鍙 FA_HIDDEN闅愯棌 FA_SYSTEM緋葷粺
int read(int handle,void *buf,int nbyte)浠庢枃浠跺彿涓篽andle鐨勬枃浠朵腑璇籲byte涓瓧絎?br />
瀛樺叆buf涓?br />
int _read(int handle,void *buf,int nbyte)浠庢枃浠跺彿涓篽andle鐨勬枃浠朵腑璇籲byte涓瓧絎?br />
瀛樺叆buf涓?鐩存帴璋冪敤MSDOS榪涜鎿嶄綔.
int write(int handle,void *buf,int nbyte)灝哹uf涓殑nbyte涓瓧絎﹀啓鍏ユ枃浠跺彿
涓篽andle鐨勬枃浠朵腑
int _write(int handle,void *buf,int nbyte)灝哹uf涓殑nbyte涓瓧絎﹀啓鍏ユ枃浠跺彿
涓篽andle鐨勬枃浠朵腑
int dup(int handle) 澶嶅埗涓涓枃浠跺鐞嗘寚閽坔andle,榪斿洖榪欎釜鎸囬拡
int dup2(int handle,int newhandle) 澶嶅埗涓涓枃浠跺鐞嗘寚閽坔andle鍒皀ewhandle
int eof(int *handle)媯(gè)鏌ユ枃浠舵槸鍚︾粨鏉?緇撴潫榪斿洖1,鍚﹀垯榪斿洖0
long filelength(int handle) 榪斿洖鏂囦歡闀垮害錛宧andle涓烘枃浠跺彿
int setmode(int handle,unsigned mode)鏈嚱鏁扮敤鏉ヨ瀹氭枃浠跺彿涓篽andle鐨勬枃浠剁殑鎵?br />
寮鏂瑰紡
int getftime(int handle,struct ftime *ftime) 璇誨彇鏂囦歡鍙蜂負(fù)handle鐨勬枃浠剁殑鏃墮棿錛?br />
騫跺皢鏂囦歡鏃墮棿瀛樹簬ftime緇撴瀯涓紝鎴愬姛榪斿洖0,ftime緇撴瀯濡備笅錛?br />
鈹屸攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
鈹俿truct ftime 鈹?br />
鈹倇 鈹?br />
鈹?unsigned ft_tsec:5; /*縐?/ 鈹?br />
鈹?unsigned ft_min:6; /*鍒?/ 鈹?br />
鈹?unsigned ft_hour:5; /*鏃?/ 鈹?br />
鈹?unsigned ft_day:5; /*鏃?/ 鈹?br />
鈹?unsigned ft_month:4;/*鏈?/ 鈹?br />
鈹?unsigned ft_year:1; /*騫?1980*/ 鈹?br />
鈹倉(cāng) 鈹?br />
鈹斺攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
int setftime(int handle,struct ftime *ftime) 閲嶅啓鏂囦歡鍙蜂負(fù)handle鐨勬枃浠舵椂闂?
鏂版椂闂村湪緇撴瀯ftime涓?鎴愬姛榪斿洖0.緇撴瀯ftime濡備笅:
鈹屸攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
鈹俿truct ftime 鈹?br />
鈹倇 鈹?br />
鈹?unsigned ft_tsec:5; /*縐?/ 鈹?br />
鈹?unsigned ft_min:6; /*鍒?/ 鈹?br />
鈹?unsigned ft_hour:5; /*鏃?/ 鈹?br />
鈹?unsigned ft_day:5; /*鏃?/ 鈹?br />
鈹?unsigned ft_month:4;/*鏈?/ 鈹?br />
鈹?unsigned ft_year:1; /*騫?1980*/ 鈹?br />
鈹倉(cāng) 鈹?br />
鈹斺攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
long lseek(int handle,long offset,int fromwhere) 鏈嚱鏁板皢鏂囦歡鍙蜂負(fù)handle鐨勬枃浠?br />
鐨勬寚閽堢Щ鍒癴romwhere鍚庣殑絎琽ffset涓瓧鑺傚.
SEEK_SET 鏂囦歡寮鍏?nbsp; SEEK_CUR 褰撳墠浣嶇疆 SEEK_END 鏂囦歡灝?br />
long tell(int handle) 鏈嚱鏁拌繑鍥炴枃浠跺彿涓篽andle鐨勬枃浠舵寚閽?浠ュ瓧鑺傝〃紺?br />
int isatty(int handle)鏈嚱鏁扮敤鏉ュ彇璁懼handle鐨勭被鍨?br />
int lock(int handle,long offset,long length) 瀵規(guī)枃浠跺叡浜綔灝侀攣
int unlock(int handle,long offset,long length) 鎵撳紑瀵規(guī)枃浠跺叡浜殑灝侀攣
int close(int handle) 鍏抽棴h(huán)andle鎵琛ㄧず鐨勬枃浠跺鐞?handle鏄粠_creat銆乧reat銆?br />
creatnew銆乧reattemp銆乨up銆乨up2銆乢open銆乷pen涓殑涓涓璋冪敤鑾峰緱鐨勬枃浠跺鐞?br />
鎴愬姛榪斿洖0鍚﹀垯榪斿洖-1,鍙敤浜嶶NIX緋葷粺
int _close(int handle) 鍏抽棴h(huán)andle鎵琛ㄧず鐨勬枃浠跺鐞?handle鏄粠_creat銆乧reat銆?br />
creatnew銆乧reattemp銆乨up銆乨up2銆乢open銆乷pen涓殑涓涓璋冪敤鑾峰緱鐨勬枃浠跺鐞?br />
鎴愬姛榪斿洖0鍚﹀垯榪斿洖-1,鍙兘鐢ㄤ簬MSDOS緋葷粺
FILE *fopen(char *filename,char *type) 鎵撳紑涓涓枃浠秄ilename,鎵撳紑鏂瑰紡涓簍ype錛?br />
騫惰繑鍥炶繖涓枃浠舵寚閽堬紝type鍙負(fù)浠ヤ笅瀛楃涓插姞涓婂悗緙
鈹屸攢鈹鈹攢鈹鈹鈹鈹攢鈹鈹鈹鈹鈹鈹鈹攢鈹鈹鈹鈹鈹鈹鈹鈹?br />
鈹倀ype鈹傝鍐欐?nbsp; 鈹傛枃鏈?2榪涘埗鏂囦歡鈹傚緩鏂?鎵撳紑鏃ф枃浠?鈹?br />
鈹溾攢鈹鈹尖攢鈹鈹鈹鈹尖攢鈹鈹鈹鈹鈹鈹鈹尖攢鈹鈹鈹鈹鈹鈹鈹鈹?br />
鈹俽 鈹傝 鈹傛枃鏈?nbsp; 鈹傛墦寮鏃х殑鏂囦歡 鈹?br />
鈹倃 鈹傚啓 鈹傛枃鏈?nbsp; 鈹傚緩鏂版枃浠?nbsp; 鈹?br />
鈹俛 鈹傛坊鍔?nbsp; 鈹傛枃鏈?nbsp; 鈹傛湁灝辨墦寮鏃犲垯寤烘柊鈹?br />
鈹俽+ 鈹傝/鍐?nbsp; 鈹備笉闄愬埗 鈹傛墦寮 鈹?br />
鈹倃+ 鈹傝/鍐?nbsp; 鈹備笉闄愬埗 鈹傚緩鏂版枃浠?nbsp; 鈹?br />
鈹俛+ 鈹傝/娣誨姞 鈹備笉闄愬埗 鈹傛湁灝辨墦寮鏃犲垯寤烘柊鈹?br />
鈹斺攢鈹鈹粹攢鈹鈹鈹鈹粹攢鈹鈹鈹鈹鈹鈹鈹粹攢鈹鈹鈹鈹鈹鈹鈹鈹?br />
鍙姞鐨勫悗緙涓簍銆乥銆傚姞b琛ㄧず鏂囦歡浠ヤ簩榪涘埗褰㈠紡榪涜鎿嶄綔錛宼娌″繀瑕佷嬌鐢?br />
渚? 鈹屸攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
鈹?include<stdio.h> 鈹?br />
鈹俶ain() 鈹?br />
鈹倇 鈹?br />
鈹?FILE *fp; 鈹?br />
鈹?fp=fopen("C:\\WPS\\WPS.EXE","r+b");鈹?br />
鈹斺攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
FILE *fdopen(int ahndle,char *type)
FILE *freopen(char *filename,char *type,FILE *stream)
int getc(FILE *stream) 浠庢祦stream涓涓涓瓧絎︼紝騫惰繑鍥炶繖涓瓧絎?br />
int putc(int ch,FILE *stream)鍚戞祦stream鍐欏叆涓涓瓧絎h
int getw(FILE *stream) 浠庢祦stream璇誨叆涓涓暣鏁幫紝閿欒榪斿洖EOF
int putw(int w,FILE *stream)鍚戞祦stream鍐欏叆涓涓暣鏁?br />
int ungetc(char c,FILE *stream) 鎶婂瓧絎閫鍥炵粰嫻乻tream錛屼笅涓嬈¤榪涚殑瀛楃灝嗘槸c
int fgetc(FILE *stream) 浠庢祦stream澶勮涓涓瓧絎︼紝騫惰繑鍥炶繖涓瓧絎?br />
int fputc(int ch,FILE *stream) 灝嗗瓧絎h鍐欏叆嫻乻tream涓?br />
char *fgets(char *string,int n,FILE *stream) 浠庢祦stream涓n涓瓧絎﹀瓨鍏tring涓?br />
int fputs(char *string,FILE *stream) 灝嗗瓧絎︿覆string鍐欏叆嫻乻tream涓?br />
int fread(void *ptr,int size,int nitems,FILE *stream) 浠庢祦stream涓鍏items
涓暱搴︿負(fù)size鐨勫瓧絎︿覆瀛樺叆ptr涓?br />
int fwrite(void *ptr,int size,int nitems,FILE *stream) 鍚戞祦stream涓啓鍏items
涓暱搴︿負(fù)size鐨勫瓧絎︿覆,瀛楃涓插湪ptr涓?br />
int fscanf(FILE *stream,char *format[,argument,…]) 浠ユ牸寮忓寲褰㈠紡浠庢祦stream涓?br />
璇誨叆涓涓瓧絎︿覆
int vfscanf(FILE *stream,char *format,Valist param) 浠ユ牸寮忓寲褰㈠紡浠庢祦stream涓?br />
璇誨叆涓涓瓧絎︿覆,鍙傛暟浠嶸alist param涓彇寰?br />
int fprintf(FILE *stream,char *format[,argument,…]) 浠ユ牸寮忓寲褰㈠紡灝嗕竴涓瓧絎?br />
涓插啓緇欐寚瀹氱殑嫻乻tream
int vfprintf(FILE *stream,char *format,Valist param) 浠ユ牸寮忓寲褰㈠紡灝嗕竴涓瓧絎?br />
涓插啓緇欐寚瀹氱殑嫻乻tream,鍙傛暟浠嶸alist param涓彇寰?br />
int fseek(FILE *stream,long offset,int fromwhere) 鍑芥暟鎶婃枃浠舵寚閽堢Щ鍒癴romwhere
鎵鎸囦綅緗殑鍚戝悗offset涓瓧鑺傚,fromwhere鍙互涓轟互涓嬪?
SEEK_SET 鏂囦歡寮鍏?nbsp; SEEK_CUR 褰撳墠浣嶇疆 SEEK_END 鏂囦歡灝?br />
long ftell(FILE *stream) 鍑芥暟榪斿洖瀹氫綅鍦╯tream涓殑褰撳墠鏂囦歡鎸囬拡浣嶇疆,浠ュ瓧鑺傝〃紺?br />
int rewind(FILE *stream) 灝嗗綋鍓嶆枃浠舵寚閽坰tream縐誨埌鏂囦歡寮澶?br />
int feof(FILE *stream) 媯(gè)嫻嬫祦stream涓婄殑鏂囦歡鎸囬拡鏄惁鍦ㄧ粨鏉熶綅緗?br />
int fileno(FILE *stream) 鍙栨祦stream涓婄殑鏂囦歡澶勭悊錛屽茍榪斿洖鏂囦歡澶勭悊
int ferror(FILE *stream) 媯(gè)嫻嬫祦stream涓婃槸鍚︽湁璇誨啓閿欒錛屽鏈夐敊璇氨榪斿洖1
void clearerr(FILE *stream) 娓呴櫎嫻乻tream涓婄殑璇誨啓閿欒
void setbuf(FILE *stream,char *buf) 緇欐祦stream鎸囧畾涓涓紦鍐插尯buf
void setvbuf(FILE *stream,char *buf,int type,unsigned size)
緇欐祦stream鎸囧畾涓涓紦鍐插尯buf,澶у皬涓簊ize,綾誨瀷涓簍ype,type鐨勫艱涓嬭〃
鈹屸攢鈹鈹鈹攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
鈹倀ype鍊尖攤鎰忎箟 鈹?br />
鈹溾攢鈹鈹鈹尖攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
鈹俖IOFBF鈹傛枃浠舵槸瀹屽叏緙撳啿鍖?褰撶紦鍐插尯鏄┖鏃?涓嬩竴涓緭鍏ユ搷浣滃皢浼佸浘濉弧鏁翠釜緙撯攤
鈹?nbsp; 鈹傚啿鍖?鍦ㄨ緭鍑烘椂,鍦ㄦ妸浠諱綍鏁版嵁鍐欏埌鏂囦歡涔嬪墠,灝嗗畬鍏ㄥ~鍏呯紦鍐插尯. 鈹?br />
鈹俖IOLBF鈹傛枃浠舵槸琛岀紦鍐插尯.褰撶紦鍐插尯涓虹┖鏃?涓嬩竴涓緭鍏ユ搷浣滃皢浠嶇劧浼佸浘濉暣涓紦鈹?br />
鈹?nbsp; 鈹傚啿鍖?鐒惰屽湪杈撳嚭鏃?姣忓綋鏂拌絎﹀啓鍒版枃浠?緙撳啿鍖哄氨琚竻媧楁帀. 鈹?br />
鈹俖IONBF鈹傛枃浠舵槸鏃犵紦鍐茬殑.buf鍜宻ize鍙傛暟鏄蹇界暐鐨?姣忎釜杈撳叆鎿嶄綔灝嗙洿鎺ヤ粠鏂?鈹?br />
鈹?nbsp; 鈹備歡璇?姣忎釜杈撳嚭鎿嶄綔灝嗙珛鍗蟲妸鏁版嵁鍐欏埌鏂囦歡涓? 鈹?br />
鈹斺攢鈹鈹鈹粹攢鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹?br />
int fclose(FILE *stream) 鍏抽棴涓涓祦錛屽彲浠ユ槸鏂囦歡鎴栬澶?渚嬪LPT1)
int fcloseall() 鍏抽棴鎵鏈夐櫎stdin鎴杝tdout澶栫殑嫻?br />
int fflush(FILE *stream) 鍏抽棴涓涓祦錛屽茍瀵圭紦鍐插尯浣滃鐞?br />
澶勭悊鍗沖璇葷殑嫻侊紝灝嗘祦鍐呭唴瀹硅鍏ョ紦鍐插尯錛?br />
瀵瑰啓鐨勬祦錛屽皢緙撳啿鍖哄唴鍐呭鍐欏叆嫻併傛垚鍔熻繑鍥?
int fflushall() 鍏抽棴鎵鏈夋祦錛屽茍瀵規(guī)祦鍚勮嚜鐨勭紦鍐插尯浣滃鐞?br />
澶勭悊鍗沖璇葷殑嫻侊紝灝嗘祦鍐呭唴瀹硅鍏ョ紦鍐插尯錛?br />
瀵瑰啓鐨勬祦錛屽皢緙撳啿鍖哄唴鍐呭鍐欏叆嫻併傛垚鍔熻繑鍥?
int access(char *filename,int amode) 鏈嚱鏁版鏌ユ枃浠秄ilename騫惰繑鍥炴枃浠剁殑灞炴?
鍑芥暟灝嗗睘鎬у瓨浜巃mode涓紝amode鐢變互涓嬩綅鐨勭粍鍚堟瀯鎴?br />
06鍙互璇匯佸啓 04鍙互璇?nbsp; 02鍙互鍐?nbsp; 01鎵ц(蹇界暐鐨? 00鏂囦歡瀛樺湪
濡傛灉filename鏄竴涓洰褰?鍑芥暟灝嗗彧紜畾鐩綍鏄惁瀛樺湪
鍑芥暟鎵ц鎴愬姛榪斿洖0,鍚﹀垯榪斿洖-1
int chmod(char *filename,int permiss) 鏈嚱鏁扮敤浜庤瀹氭枃浠秄ilename鐨勫睘鎬?br />
permiss鍙互涓轟互涓嬪?br />
S_IWRITE鍏佽鍐?nbsp; S_IREAD鍏佽璇?nbsp; S_IREAD|S_IWRITE鍏佽璇匯佸啓
int _chmod(char *filename,int func[,int attrib]);
鏈嚱鏁扮敤浜庤鍙栨垨璁懼畾鏂囦歡filename鐨勫睘鎬э紝
褰揻unc=0鏃訛紝鍑芥暟榪斿洖鏂囦歡鐨勫睘鎬э紱褰揻unc=1鏃訛紝鍑芥暟璁懼畾鏂囦歡鐨勫睘鎬?br />
鑻ヤ負(fù)璁懼畾鏂囦歡灞炴э紝attrib鍙互涓轟笅鍒楀父鏁頒箣涓
FA_RDONLY鍙 FA_HIDDEN闅愯棌 FA_SYSTEM緋葷粺
void SendString(SOCKET sock,LPCSTR str)
{
send(sock,str,strlen(str),0);
}
int main(void)
{
WSADATA wsaData;
SOCKET sock;
SOCKADDR_IN tcpaddr;
hostent * remoteHost;
char host[] = {"www.hao123.com"}; //涓繪満鍚嶅氨鐩存帴鍐欎簡(jiǎn)
int Ret,l;
BOOL done;
int port = 80;
int chars = 0;
char buffer[512];
if( (Ret = WSAStartup(MAKEWORD(1,1), &wsaData) ) != 0 )
{
printf("WSAStartup failed with error %d\n", Ret);
return 1;
}
if( (remoteHost = gethostbyname(host)) == NULL ) //閫氳繃涓繪満鍚嶈幏鍙栧湴鍧
{
printf("gethostbyname error!\n");
return 1;
}
sock = socket (AF_INET, SOCK_STREAM, 0);
tcpaddr.sin_family = AF_INET;
tcpaddr.sin_port = htons( (unsigned short)port );
tcpaddr.sin_addr.s_addr = *((unsigned long *)*remoteHost->h_addr_list); //杞崲鍦板潃
if( connect(sock, (const sockaddr * )&tcpaddr, sizeof(tcpaddr)) )
{
printf("connect error!");
return 1;
}
//榪欓噷鏄鍙戦佺殑http澶撮儴
SendString(sock,"GET / HTTP/1.1\r\n");
SendString(sock,"Host:www.hao123.com\r\n");
SendString(sock,"Accept: */*\r\n");
SendString(sock,"User-Agent: Mozilla/4.0");
SendString(sock,"(compatible; MSIE 5.00; Windows 98)\r\n");
SendString(sock,"Connection:Keep-Alive\r\n");
SendString(sock,"\r\n");
SendString(sock,"\r\n");//鏈鍚庤鍔犵┖琛?/p>
done = FALSE;
FILE * fp;
fp = fopen("1.txt","w");
//鎵撳嵃騫朵繚瀛榟ttp鍝嶅簲鐨勫ご閮?br />
while(!done)
{
l = recv(sock,buffer,1,0);
if(l<0)
done=TRUE;
switch(*buffer)
{
case '\r':
break;
case '\n':
if(chars==0)
done = TRUE;
chars=0;
break;
default:
chars++;
break;
}
printf("%c",*buffer);
fputc(buffer[0],fp);
}
//鎺ユ敹姝f枃閮ㄥ垎
int sum = 0;
do
{
l = recv(sock,buffer,sizeof(buffer)-1,0);
if( l < 0 )
break;
sum += l;
*(buffer + l) = 0;
fputs(buffer,fp);
} while( l > 0 );
//榪欓噷杈撳嚭姝f枃閮ㄥ垎澶у皬錛屽彂鐜板叾瀹炲拰鍝嶅簲娑堟伅澶撮儴鐨凜ontent-length澶у皬鏄竴鏍風(fēng)殑
//榪欐牱灝卞彲浠ユ鏌ユ槸鍚︽帴鍙楀畬姣?br />
printf("sum = %d\n",sum);
closesocket(sock);
if( WSACleanup() == SOCKET_ERROR )
{
printf("WSACleanup failed with error %d \n", WSAGetLastError() );
}
return 0;
}