亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? file.c

?? demo目錄: fvs_enhancer:指紋增強(qiáng)程序
?? C
字號(hào):
/*############################################################################# * 文件名:file.c * 功能:  實(shí)現(xiàn)了指紋相關(guān)文件的操作 * modified by  PRTsinghua@hotmail.com#############################################################################*/#include <stdio.h>#include <stdlib.h>#include <string.h>#include "file.h"/* 對(duì)象的這些接口實(shí)現(xiàn)是私有的,不必為用戶所知 */typedef struct iFvsFile_t{	FILE	*pf;	/* 文件指針 */} iFvsFile_t;/******************************************************************************  * 功能:創(chuàng)建一個(gè)新的文件對(duì)象,只有在創(chuàng)建之后,文件對(duì)象才能為其它函數(shù)所用。  * 參數(shù):無  * 返回:若創(chuàng)建失敗,返回NULL;否則返回新的對(duì)象句柄。******************************************************************************/FvsFile_t FileCreate(){	iFvsFile_t* p = NULL;	p = (iFvsFile_t*)malloc(sizeof(iFvsFile_t));	if (p!=NULL)		p->pf = NULL;	return (FvsFile_t)p;}/******************************************************************************  * 功能:破壞一個(gè)已經(jīng)存在的文件對(duì)象,在毀壞之后,文件對(duì)象不能再為其它函數(shù)所用。  * 參數(shù):file  即將刪除的文件對(duì)象指針  * 返回:無返回值******************************************************************************/void FileDestroy(FvsFile_t file){	iFvsFile_t* p = NULL;	if (file==NULL)		return;	/* 關(guān)閉文件,如果它還打開著 */	(void)FileClose(file);	p = file;	free(p);}/******************************************************************************  * 功能:打開一個(gè)新的文件。一個(gè)文件可以讀打開,寫打開,或者被創(chuàng)建。  * 參數(shù):file    文件對(duì)象  *       name    待打開文件的名字  *       flags   打開標(biāo)志  * 返回:錯(cuò)誤編號(hào)******************************************************************************/FvsError_t FileOpen(FvsFile_t file, const FvsString_t name, 						const FvsFileOptions_t flags){	iFvsFile_t* p = (iFvsFile_t*)file;	char strFlags[10];	int nflags = (int)flags;	/* 關(guān)閉文件,如果已經(jīng)打開 */	(void)FileClose(p);	strcpy(strFlags, "");	if ( (nflags & FvsFileRead)!=0   &&		 (nflags & FvsFileWrite)!=0 )		strcat(strFlags, "rw");	else	{		if ((nflags & FvsFileRead)!=0)			strcat(strFlags, "r");		if ((nflags & FvsFileWrite)!=0)			strcat(strFlags, "w");	}    	strcat(strFlags, "b");	if ((nflags & FvsFileCreate)!=0)		strcat(strFlags, "+");	p->pf = fopen(name, strFlags);	if (FileIsOpen(file)==FvsTrue)		return FvsOK;	return FvsFailure;}/******************************************************************************  * 功能:關(guān)閉一個(gè)文件對(duì)象,文件關(guān)閉之后,文件不再可用。  * 參數(shù):file    文件對(duì)象  * 返回:錯(cuò)誤編號(hào)******************************************************************************/FvsError_t FileClose(FvsFile_t file){	iFvsFile_t* p = (iFvsFile_t*)file;	int nerr = -1;	if (p->pf!=NULL)	{		nerr = fclose(p->pf);		p->pf = NULL;	}	if (nerr==0)		return FvsOK;	return FvsFailure;}/******************************************************************************  * 功能:測(cè)試一個(gè)文件是否打開  * 參數(shù):file    文件對(duì)象  * 返回:文件打開,則返回true;否則返回false******************************************************************************/FvsBool_t FileIsOpen(const FvsFile_t file){	iFvsFile_t* p = (iFvsFile_t*)file;	return (p->pf!=NULL)?FvsTrue:FvsFalse;}/******************************************************************************  * 功能:測(cè)試是否到了文件結(jié)尾  * 參數(shù):file    文件對(duì)象  * 返回:到了結(jié)尾,返回true;否則返回false******************************************************************************/FvsBool_t FileIsAtEOF(const FvsFile_t file){	iFvsFile_t* p = (iFvsFile_t*)file;	if (FileIsOpen(p)==FvsFalse)		return FvsFalse;	return (feof(p->pf)!=0)?FvsTrue:FvsFalse;}/******************************************************************************  * 功能:提交對(duì)文件所作的更改  * 參數(shù):file    文件對(duì)象  * 返回:錯(cuò)誤編號(hào)******************************************************************************/FvsError_t FileCommit(FvsFile_t file){	iFvsFile_t* p = (iFvsFile_t*)file;	return (fflush(p->pf)==0)?FvsOK:FvsFailure;}/******************************************************************************  * 功能:跳到文件的開頭  * 參數(shù):file    文件對(duì)象  * 返回:錯(cuò)誤編號(hào)******************************************************************************/FvsError_t FileSeekToBegin(FvsFile_t file){	iFvsFile_t* p = (iFvsFile_t*)file;	if (FileIsOpen(p)==FvsTrue)	{		if (fseek(p->pf, 0, SEEK_SET)!=0)			return FvsFailure;		return FvsOK;	}	return FvsFailure;}/******************************************************************************  * 功能:跳到文件的結(jié)尾  * 參數(shù):file    文件對(duì)象  * 返回:錯(cuò)誤編號(hào)******************************************************************************/FvsError_t FileSeekToEnd(FvsFile_t file){	iFvsFile_t* p = (iFvsFile_t*)file;	if (FileIsOpen(p)==FvsTrue)	{		if (fseek(p->pf, 0, SEEK_END)!=0)			return FvsFailure;		return FvsOK;	}	return FvsFailure;}/******************************************************************************  * 功能:得到當(dāng)前的文件指針位置  * 參數(shù):file    文件對(duì)象  * 返回:當(dāng)前的指針位置******************************************************************************/FvsUint_t FileGetPosition(FvsFile_t file){	iFvsFile_t* p = (iFvsFile_t*)file;	if (FileIsOpen(p)==FvsTrue)		return (FvsUint_t)ftell(p->pf);	return 0;}/******************************************************************************  * 功能:跳到文件的指定位置  * 參數(shù):file     文件對(duì)象  *       position 指定的文件位置  * 返回:錯(cuò)誤編號(hào)******************************************************************************/FvsError_t FileSeek(FvsFile_t file, const FvsUint_t position){	iFvsFile_t* p = (iFvsFile_t*)file;	if (FileIsOpen(p)==FvsTrue)	{		if (fseek(p->pf, (long int)position, SEEK_SET)!=0)			return FvsFailure;		return FvsOK;	}	return FvsFailure;}/******************************************************************************  * 功能:從文件中讀數(shù)據(jù),所讀取的字節(jié)數(shù)由length決定。讀取的數(shù)據(jù)保存于指針data。  * 參數(shù):file    文件對(duì)象  *       data    指向存儲(chǔ)數(shù)據(jù)的數(shù)組  *       length  要讀取的字節(jié)數(shù)  * 返回:實(shí)際讀取的字節(jié)數(shù)******************************************************************************/FvsUint_t FileRead(FvsFile_t file, FvsPointer_t data, const FvsUint_t length){	iFvsFile_t* p = (iFvsFile_t*)file;	return (FvsUint_t)fread(data, (size_t)1, (size_t)length, p->pf);}/******************************************************************************  * 功能:往文件中寫數(shù)據(jù),所寫的字節(jié)數(shù)由length決定。要寫入的數(shù)據(jù)保存于指針data。  * 參數(shù):file    文件對(duì)象  *       data    指向存儲(chǔ)數(shù)據(jù)的數(shù)組  *       length  要寫入的字節(jié)數(shù)  * 返回:實(shí)際寫入的字節(jié)數(shù)******************************************************************************/FvsUint_t FileWrite(FvsFile_t file, const FvsPointer_t data, const FvsUint_t length){	iFvsFile_t* p = (iFvsFile_t*)file;	return (FvsUint_t)fwrite(data, (size_t)1, (size_t)length, p->pf);}/******************************************************************************  * 功能:從文件中得到一個(gè)字節(jié)  * 參數(shù):file    文件對(duì)象  * 返回:讀取的字節(jié)******************************************************************************/FvsByte_t FileGetByte(FvsFile_t file){	iFvsFile_t* p = (iFvsFile_t*)file;	return (FvsByte_t)fgetc(p->pf);}/******************************************************************************  * 功能:從文件中讀取一個(gè)字  * 參數(shù):file    文件對(duì)象  * 返回:讀取的字******************************************************************************/FvsWord_t FileGetWord(FvsFile_t file){	iFvsFile_t* p = (iFvsFile_t*)file;	FvsWord_t w = (FvsWord_t)fgetc(p->pf);	return (w<<8)+fgetc(p->pf);}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美探花视频资源| eeuss鲁一区二区三区| 欧美精品一区二区三区四区| 国产成人在线观看免费网站| 1024国产精品| 日韩欧美一级片| 91香蕉视频mp4| 国产色婷婷亚洲99精品小说| 在线国产电影不卡| 国产精品自拍三区| 亚洲成人在线免费| 在线播放91灌醉迷j高跟美女 | 欧美日韩国产天堂| 国内精品免费**视频| 亚洲欧美日韩国产一区二区三区| 91在线视频观看| 欧美a一区二区| 亚洲狼人国产精品| 日韩欧美另类在线| 欧美丝袜第三区| 成人高清视频免费观看| 精品一区二区在线看| 亚洲婷婷综合色高清在线| 日韩一区和二区| 欧美曰成人黄网| 成人国产一区二区三区精品| 亚洲一区在线播放| 国产精品污污网站在线观看| 欧美一区二区二区| 欧美日韩在线三级| 91网站最新网址| 懂色中文一区二区在线播放| 麻豆国产精品视频| 日日摸夜夜添夜夜添精品视频| 一二三四社区欧美黄| 亚洲女同女同女同女同女同69| 国产精品狼人久久影院观看方式| 亚洲精品一区在线观看| 69堂成人精品免费视频| 欧美日韩国产首页| 欧美日韩在线免费视频| 91玉足脚交白嫩脚丫在线播放| 国产中文字幕精品| 九九精品一区二区| 一区二区三区在线观看动漫| ...xxx性欧美| 亚洲色欲色欲www| 国产精品美女久久福利网站| 久久精品视频免费| 国产欧美一区二区精品久导航 | 五月婷婷欧美视频| 一区二区三区不卡视频| 欧美日韩小视频| 国产成人精品一区二| 懂色一区二区三区免费观看| 成人福利视频网站| 日本韩国欧美国产| 欧美久久久久中文字幕| 日韩一区二区三区电影在线观看 | 国产午夜精品一区二区三区四区| 国产女主播视频一区二区| 亚洲视频小说图片| 亚洲国产wwwccc36天堂| 蜜臀av一级做a爰片久久| 国产一区二区三区观看| 成人av第一页| 欧美日韩黄色影视| 精品电影一区二区| 亚洲欧美国产毛片在线| 日本成人中文字幕| 成人黄色软件下载| 欧美日本在线观看| 久久久久国产成人精品亚洲午夜| 亚洲人xxxx| 久久精品国产99久久6| 成人av网址在线| 日韩一区国产二区欧美三区| 国产欧美精品在线观看| 亚洲va中文字幕| 国产成人精品在线看| 在线观看日韩电影| 久久人人超碰精品| 亚洲影院久久精品| 国产精品一级黄| 制服丝袜中文字幕一区| 国产精品私房写真福利视频| 午夜久久久久久久久久一区二区| 国产精品自拍一区| 欧美丰满少妇xxxbbb| 国产精品欧美久久久久一区二区| 亚洲成人午夜影院| 不卡一二三区首页| 欧美刺激午夜性久久久久久久| 综合分类小说区另类春色亚洲小说欧美| 日韩影院在线观看| 99在线视频精品| 国产性天天综合网| 日本va欧美va瓶| 在线观看不卡一区| 中文字幕第一区综合| 日韩av在线免费观看不卡| 99re66热这里只有精品3直播 | 国产一区欧美二区| 欧美日韩国产另类一区| 中文字幕在线不卡国产视频| 久久国产尿小便嘘嘘| 欧美色综合影院| 国产精品久久久久一区二区三区| 日韩av不卡在线观看| 91女人视频在线观看| 国产女主播视频一区二区| 久久草av在线| 777奇米成人网| 亚洲电影在线免费观看| 91免费看`日韩一区二区| 欧美国产视频在线| 国产一区二区在线免费观看| 欧美一级电影网站| 亚洲成va人在线观看| 在线观看成人小视频| 亚洲最大的成人av| 色婷婷av一区二区| 国产精品五月天| 高清久久久久久| 国产欧美日韩综合精品一区二区| 久久99精品久久久久婷婷| 欧美一区三区四区| 日本不卡一区二区三区| 欧美日韩免费电影| 午夜精品一区二区三区免费视频| 色94色欧美sute亚洲线路二| 亚洲激情在线激情| 91在线观看污| 亚洲欧美在线aaa| 99久久久精品免费观看国产蜜| 欧美高清在线视频| 99免费精品在线观看| 中文字幕一区三区| gogogo免费视频观看亚洲一| **欧美大码日韩| 91极品美女在线| 亚洲成人精品影院| 精品视频999| 日韩国产成人精品| 精品国产污网站| 国产成人精品aa毛片| 欧美激情综合网| 色婷婷av久久久久久久| 亚洲高清视频在线| 精品国产一区二区精华| 国产精品91xxx| 自拍偷拍国产精品| 欧美在线影院一区二区| 日日夜夜一区二区| 久久久亚洲欧洲日产国码αv| 成人国产精品视频| 一区二区不卡在线播放| 在线电影一区二区三区| 久久精品国产精品青草| 中文字幕欧美日本乱码一线二线| 成人a级免费电影| 亚洲国产精品视频| 精品久久久久久久久久久久久久久久久| 国产精品亚洲一区二区三区妖精| 国产精品久久久久影院| 欧美中文字幕一区二区三区| 人禽交欧美网站| 国产精品视频yy9299一区| 91福利视频久久久久| 久久精品av麻豆的观看方式| 国产精品妹子av| 欧美精品一二三| 成人美女视频在线观看18| 亚洲精品videosex极品| 日韩一区二区三区av| 国产aⅴ综合色| 亚洲.国产.中文慕字在线| 久久久久久久综合| 99精品视频一区二区三区| 日韩成人一级片| 国产精品日产欧美久久久久| 在线电影一区二区三区| 成人爱爱电影网址| 日本亚洲欧美天堂免费| 中文字幕在线观看一区| 欧美一区二区高清| 色哟哟在线观看一区二区三区| 乱中年女人伦av一区二区| 亚洲狠狠丁香婷婷综合久久久| 欧美精品一区二区三区四区 | 欧美日韩免费在线视频| 国产一区二区三区免费播放| 亚洲综合激情另类小说区| 久久精品在线免费观看| 7777精品久久久大香线蕉| 91麻豆免费看| 国产成人av影院| 蜜桃视频在线一区| 亚洲第一av色| 一区二区久久久久|