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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? telsrc_main.c

?? 程序教程
?? C
?? 第 1 頁 / 共 2 頁
字號:
/********************************************************************


	挊嶌尃強桳幰		丗	WangHongjun@neusoft.com

	僜乕僗僼傽僀儖柤	丗	telsrc_main.c

	撪梕				丗	揹榖斣崋専嶕儊僀儞IF娭悢掕媊

	嶌惉擔丒幰			丗	2005.07.08		Wang Hongjun


	廋惓擔丒幰			丗




*********************************************************************/

/*------------------------------------------------------------------*/
/*																	*/
/*	僀儞僋儖乕僪僼傽僀儖晹暘										*/
/*																	*/
/*------------------------------------------------------------------*/
#include "telsrc.h"

/*------------------------------------------------------------------*/
/*																	*/
/*	娭悢掕媊晹暘													*/
/*																	*/
/*------------------------------------------------------------------*/

/********************************************************************/
/*	TelSrc_Main娭悢													*/
/*	----------------------------------------------------------------*/
/*	Input:															*/
/*																	*/
/*	----------------------------------------------------------------*/
/*	Output:															*/
/*		RETURN				:	乮惓忢乯RET_SUCCESS					*/
/*								乮堎忢乯RET_FAILED					*/
/*																	*/
/*	----------------------------------------------------------------*/
/*	Outline:														*/
/*		Tel No. search main funciton.								*/
/*																	*/
/*	----------------------------------------------------------------*/
/*	Others:															*/
/*																	*/
/********************************************************************/
int TelSrc_Main()
{
	int				iRet		= RET_SUCCESS;
							 		/* Return value					*/
	int				iDataSource	= TELSRC_DATASRC_FILE;	
									/* Data Source					*/
	int				iReadRslt	= 0;
					/* Result of read from key buffer				*/
	int				iMaxDataNum = 0;/* Number of data for search	*/
	H_TELSRC		hTelSrc	 = NULL;/* Tel search handle			*/
	S_TELSRC_COND	stTelSrcCond;	/* Tel search conditon struct	*/

	/* Welcome information											*/
	printf( "\n************************************************\n" );
	printf( "*This is a Tel No. register and search program!*\n" );
	printf( "************************************************\n" );

	/* Initialization												*/
	memset( &stTelSrcCond, 0, (WORD)sizeof(stTelSrcCond) );

	/* Prompt user to input the number of data for searching		*/
	printf( "\nHow many Tel No. can be saved!\n" );
	iReadRslt = scanf( "%8d", iMaxDataNum );
	while( ( 0 >= iMaxDataNum ) || ( 0 >= iReadRslt ) )
	{
		if( 0 >= iReadRslt )
		{
			while( 10 != getchar() )
			{
				continue;
			}
		}
		
		printf( "Invalid number, please input the correct one." );
		printf( "\nHow many Tel No. can be saved!\n" );
		iReadRslt = scanf( "%8d", &iMaxDataNum );		
	}

	/* Key buffer clear				*/
	while( 10 != getchar() )
	{
		continue;
	}

	/* Max Data num limited (1000)									*/
	if( TELSRC_MAXDATANUM < iMaxDataNum )
	{
		iMaxDataNum = TELSRC_MAXDATANUM;
	}

	/* Prompt user to select the type of set data					*/
	printf( "Please select the Type of data saved!\n" );
	printf( "(0	: File;	1	: Memory)!\n" );
	iReadRslt = scanf( "%8d", &iDataSource );
	while( ( ( TELSRC_DATASRC_FILE != iDataSource ) && 
		     ( TELSRC_DATASRC_MEM != iDataSource ) ) || 
		   ( 0 >= iReadRslt ) )
	{
		/* In the case that string is input, clear the key buffer	*/
		if( 0 >= iReadRslt )
		{
			while( 10 != getchar() )
			{
				continue;
			}
		}
		
		/* Prompt the user to select the correct type				*/
		printf( "Invalid type, please input the correct one.\n" );
		iReadRslt = scanf( "%8d", &iDataSource );		
	}

	/* Key buffer clear				*/
	while( 10 != getchar() )
	{
		continue;
	}

	/* Tel No. search condition set									*/
	stTelSrcCond.iMaxDataNum	= iMaxDataNum;
	stTelSrcCond.iDataSource	= iDataSource;

	/* Handle create												*/
	hTelSrc = TelSrc_CreHandle( &stTelSrcCond );
	if( NULL == hTelSrc )
	{
		printf( "\nHandle create failed!!\n" );
		return RET_FAILED;
	}

	/* Execute different operation by the type user specified		*/
	iRet = TelSrc_UserSel( hTelSrc );

	/* Handle free				*/
	iRet = TelSrc_FreeHandle( hTelSrc );
	
	return iRet;			
}

/********************************************************************/
/*	TelSrc_UserSel													*/
/*	----------------------------------------------------------------*/
/*	Input:															*/
/*		int					:	Tel No. search class handle[IN]		*/
/*																	*/
/*	----------------------------------------------------------------*/
/*	Output:															*/
/*		RETURN				:	乮惓忢乯RET_SUCCESS					*/
/*								乮堎忢乯RET_FAILED					*/
/*																	*/
/*	----------------------------------------------------------------*/
/*	Outline:														*/
/*		Excute the different program by user select.				*/
/*																	*/
/*	----------------------------------------------------------------*/
/*	Others:															*/
/*																	*/
/********************************************************************/
int TelSrc_UserSel(
	H_TELSRC		hTelSrc			/* Tel No. search class handle	*/
	)
{
	char			cQuitConf		= 'Y';
									/* Confirm to exit or not		*/
	char			cDelConf		= 'N';
									/* Confirm to delete or not		*/
	int				iRet			= RET_SUCCESS;
							 		/* Return value					*/
	int				iGetChrNum		= 0;
									/* Number of char  from Key Buf */
	int				iOperFlg		= TELSRC_INIT;
									/* User operation type			*/
	S_TELSRC*		pstTelSrc		= NULL;
									/* Telsearch struct				*/
	S_TELSRC_COND*	pstTelSrcCond	= NULL;
									/* Tel search conditon struct	*/

	/* Exception prevention											*/
	if( NULL == hTelSrc )
	{
		return RET_FAILED;
	}

	/* Data area get				*/
	pstTelSrc		= (S_TELSRC*)hTelSrc;
	pstTelSrcCond	= &pstTelSrc->stTelSrcCond;

	/* Execute different operation by the type user specified		*/
	while( (TELSRC_INIT  <= iOperFlg) && (TELSRC_DATADEL  >= iOperFlg) )
	{
		iOperFlg = TELSRC_INIT;

		printf( "\nPlease select your operation!\n" );
		printf( "( 1		: Tel No. Regist.)\n" );
		printf( "( 2		: Tel No. Search.)\n" );
		printf( "( 3		: Tel No. Delete.)\n" );
		printf( "( Other	: Exit. )\n" );

		/* Read user's selection									*/
		iGetChrNum = scanf( "%8d", &iOperFlg );
		if( 0 >= iGetChrNum )
		{
			scanf( "%8s", &iOperFlg );
		}

		/* Key buffer clear				*/
		while( 10 != getchar() )
		{
			continue;
		}

		switch( iOperFlg )
		{
		case TELSRC_DATAREG:	/* New data register				*/
			if( pstTelSrc->iDataNum >= pstTelSrcCond->iMaxDataNum )
			{
				printf( "\nIt cannt be registerd any more.\n" );
				printf( "Delete part of the data?\n" );				
				printf( "Y(y): Delete;	N(n): Select another\n" );
				scanf( "%1s", &cDelConf );
				if( ( 'Y' == cDelConf ) || ( 'y' == cDelConf ) )
				{
					iRet = TelSrc_DataDel( hTelSrc );
				}

				/* Key buffer clear				*/
				while( 10 != getchar() )
				{
					continue;
				}
			}
			else
			{
				iRet = TelSrc_DataReg( hTelSrc );
			}
			break;

		case TELSRC_DATASRC:	/* Tel No. search					*/
			iRet = TelSrc_DataSrc( hTelSrc );
			break;

		case TELSRC_DATADEL:	/* Delete an item					*/
			iRet = TelSrc_DataDel( hTelSrc );
			break;

		default:				/* Quit								*/
			printf( "\nAre you sure that you want to quit the program?\n" );
			printf( "\n(Y(y)/N(n))\n" );
			scanf( "%1s", &cQuitConf );
			if( ( 'Y' == cQuitConf ) || ( 'y' == cQuitConf ) )
			{
				iOperFlg = TELSRC_QUIT;
			}
			else
			{
				iOperFlg = TELSRC_INIT;
			}

			/* Key buffer clear				*/
			while( 10 != getchar() )
			{
				continue;
			}
		}

	}

	return iRet;			
}

/********************************************************************/
/*	TelSrc_CreHandle娭悢											*/
/*	----------------------------------------------------------------*/
/*	Input:															*/
/*		int					:	Search condition[IN]				*/
/*																	*/
/*	----------------------------------------------------------------*/
/*	Output:															*/
/*		RETURN				:	乮惓忢乯Telphone search handle		*/
/*								乮堎忢乯NULL						*/
/*																	*/
/*	----------------------------------------------------------------*/
/*	Outline:														*/
/*		Create telphone search handle.								*/
/*	----------------------------------------------------------------*/
/*	Others:															*/
/*																	*/
/********************************************************************/
H_TELSRC TelSrc_CreHandle(
	S_TELSRC_COND*	pstTelSrcCond
					/* I/ Search condition							*/
	)
{
	H_TELSRC		hTelSrc			= NULL;
					/* Telsearch class handle						*/


	/* Exception prevention											*/
	if( NULL == pstTelSrcCond )
	{
		return (H_TELSRC)NULL;
	}

	/* Create TelSrc handle by conditons user specified				*/
	if( TELSRC_DATASRC_FILE == (pstTelSrcCond->iDataSource) )
	{
		hTelSrc = telsrc_crehandle_file( pstTelSrcCond );
	}
	else
	{
		hTelSrc = telsrc_crehandle_mem( pstTelSrcCond );
	}
	
	return hTelSrc;
}

/********************************************************************/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩在线综合| 94-欧美-setu| 亚洲欧美另类图片小说| 成人一级黄色片| 精品一区二区国语对白| 同产精品九九九| 亚洲欧美日韩国产综合| 欧美精品一区二区不卡| 538prom精品视频线放| 91老师国产黑色丝袜在线| 精油按摩中文字幕久久| 蜜桃视频一区二区三区在线观看| 亚洲欧美在线视频| 国产亚洲欧美激情| 国产视频一区在线观看| 91麻豆精品国产91久久久使用方法 | 国产九色sp调教91| 日韩专区中文字幕一区二区| 有码一区二区三区| 亚洲另类色综合网站| 亚洲婷婷国产精品电影人久久| 久久精品亚洲国产奇米99| 欧美成人福利视频| 日韩一区二区三区免费观看| 51久久夜色精品国产麻豆| 欧美精品久久天天躁| 欧美日韩久久久一区| 欧美日韩一区二区在线观看视频 | 国产精品资源站在线| 免费成人小视频| 久久99精品国产.久久久久 | 91国产精品成人| 精品少妇一区二区三区在线视频| 久久久91精品国产一区二区精品 | 欧美r级在线观看| 最新高清无码专区| 美女精品自拍一二三四| 91理论电影在线观看| 精品久久久久久久一区二区蜜臀| 国产欧美日韩在线| 日本午夜一本久久久综合| 成人国产在线观看| 日韩午夜精品电影| 亚洲人精品一区| 韩国成人在线视频| 欧美日韩一区二区三区在线| 久久九九99视频| 免费在线观看一区| 色呦呦国产精品| 国产日本欧洲亚洲| 久久国产日韩欧美精品| 欧美亚洲国产一区二区三区va| 久久一区二区视频| 三级亚洲高清视频| 91福利国产精品| 国产精品国产三级国产有无不卡| 久久电影网站中文字幕| 欧美区在线观看| 一区二区三区在线免费| 国产成人亚洲精品狼色在线| 欧美成人精品3d动漫h| 天堂蜜桃一区二区三区 | 欧美曰成人黄网| 国产精品二区一区二区aⅴ污介绍| 青青国产91久久久久久| 欧美日韩国产首页在线观看| 一区二区三区日本| 99久久精品一区二区| 视频一区二区三区中文字幕| 一区二区三区在线视频免费| 国产欧美精品一区二区色综合朱莉| 国产精品一区免费视频| 一区二区欧美国产| 久久精品夜夜夜夜久久| 色综合色综合色综合| 国产在线精品不卡| 亚洲蜜臀av乱码久久精品蜜桃| 精品久久久久久久久久久院品网| 成人晚上爱看视频| 奇米色777欧美一区二区| 中文字幕一区二区三区四区不卡 | 精品免费国产二区三区| 成人永久免费视频| 麻豆一区二区99久久久久| 亚洲视频综合在线| 久久九九99视频| 3d动漫精品啪啪一区二区竹菊| 成人黄色在线网站| 精品一区二区三区视频在线观看| 亚洲猫色日本管| 国产欧美日韩三区| 欧美xxxxxxxxx| 欧美日韩不卡在线| 91麻豆免费看| 成a人片国产精品| 国产乱国产乱300精品| 日韩电影在线观看网站| 亚洲国产精品久久久男人的天堂| 久久精品人人做人人爽人人| 精品国产制服丝袜高跟| 日韩一区二区三区在线视频| 日本久久电影网| 972aa.com艺术欧美| 国产成人日日夜夜| 狠狠狠色丁香婷婷综合激情| 秋霞午夜鲁丝一区二区老狼| 亚洲第一二三四区| 亚洲精品视频自拍| 亚洲精品国产成人久久av盗摄 | 国产精品亚洲第一区在线暖暖韩国| 日韩国产精品大片| 亚洲电影在线播放| 亚洲精品视频免费看| 亚洲欧美一区二区三区孕妇| 国产精品国产三级国产普通话99 | 精品一区二区国语对白| 青青草原综合久久大伊人精品优势| 亚洲一区二区四区蜜桃| 亚洲精品乱码久久久久久黑人| 亚洲伦理在线免费看| 一区二区三区日韩精品视频| 亚洲乱码国产乱码精品精98午夜| 国产精品福利一区二区三区| 亚洲三级免费电影| 日韩美女视频一区二区| 亚洲老司机在线| 亚洲午夜一区二区三区| 午夜av一区二区三区| 日本中文字幕一区二区视频 | 久久只精品国产| 久久先锋影音av鲁色资源网| 国产天堂亚洲国产碰碰| 综合久久国产九一剧情麻豆| 亚洲精品中文在线观看| 亚洲国产视频网站| 久久99精品国产麻豆不卡| 国产精品影视网| 99久久国产综合精品色伊| 色综合中文字幕| 欧美伦理影视网| 精品国产乱码久久久久久久久| 国产精品网站在线观看| 亚洲人成亚洲人成在线观看图片| 午夜国产精品影院在线观看| 精久久久久久久久久久| 99久久精品免费| 在线播放国产精品二区一二区四区| 日韩欧美你懂的| 国产精品久久久久9999吃药| 亚洲小说欧美激情另类| 狠狠色丁香婷综合久久| 波多野结衣在线一区| 欧美日韩你懂的| 国产欧美一区二区精品婷婷| 亚洲精品美腿丝袜| 国产一区二区导航在线播放| 色又黄又爽网站www久久| 欧美电影免费提供在线观看| 国产精品欧美一区二区三区| 亚洲永久精品大片| 国产99久久久精品| 欧美日韩成人在线| 国产精品久久福利| 另类综合日韩欧美亚洲| 色视频成人在线观看免| 精品国产乱码久久久久久久久| 亚洲一区二区三区精品在线| 国产精品一区二区无线| 欧美日韩国产综合一区二区| 久久久久久久综合| 天涯成人国产亚洲精品一区av| 成人黄色在线网站| 精品国产一区二区三区不卡| 亚洲精品视频一区| 成人国产在线观看| 久久品道一品道久久精品| 亚洲不卡在线观看| 在线亚洲人成电影网站色www| 日韩免费成人网| 亚洲高清视频在线| 色综合天天性综合| 国产精品亲子伦对白| 麻豆成人91精品二区三区| 欧美天天综合网| 亚洲情趣在线观看| caoporm超碰国产精品| 精品少妇一区二区三区在线播放| 天天免费综合色| 欧美日韩精品一区二区三区| 中文字幕在线一区| 福利视频网站一区二区三区| 精品乱人伦小说| 激情久久五月天| 日韩欧美国产午夜精品| 婷婷亚洲久悠悠色悠在线播放| 欧美性xxxxxxxx| 亚洲综合精品久久| 在线观看亚洲a| 亚洲电影你懂得| 欧美日韩二区三区|