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

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

?? cdatetime.h

?? vc++網(wǎng)絡(luò)程序設(shè)計(jì)實(shí)例詳解 人民郵電出版社3-4章源碼
?? H
字號(hào):
/*
	CDateTime.h
	Classe base per data/ora (CRT).
	Luca Piergentili, 24/11/99
	lpiergentili@yahoo.com
	http://www.geocities.com/lpiergentili/
*/
#ifndef _CDATETIME_H
#define _CDATETIME_H 1

#include "typedef.h"
#include <stdio.h>
#include <stdlib.h>

#define MAX_DATE_STRING	64	// dim. max per una stringa con la data
#define MAX_TIME_STRING	32	// dim. max per una stringa con l'ora
#define MAX_DATETIME_BUF	16	// dim. max per un elemento della data/ora

/*
	DAY
	tipo per i giorni della settimana
*/
enum DAY {
	MON = 0,
	TUE,
	WED,
	THU,
	FRI,
	SAT,
	SUN
};

/*
	MONTH
	tipi per i mesi dell'anno
*/
enum MONTH {
	JAN = 0,
	FEB,
	MAR,
	APR,
	MAY,
	JUN,
	JUL,
	AUG,
	SEP,
	OCT,
	NOV,
	DEC
};

/*
	DATETIMEOBJECT
	tipo per il tipo dell'oggetto
*/
enum DATETIMEOBJECT {
	YEAR,
	MONTH,
	DAY,
	HOUR,
	MINUTE,
	SECOND
};

//$ L'UTC E' SEMPRE LOCALE, OSSIA E' L'ORA GMT CONVERTITA IN LOCALE

/*
	DATEFORMAT
	tipo per i formati della data
*/
enum DATEFORMAT {
	AMERICAN = 0,		// "mm/dd/yyyy"
	ANSI,			// "yyyy.mm.dd"
	ANSI_SHORT,		// "yyyymmdd"
	BRITISH,			// "dd/mm/yyyy"
	FRENCH,			// "dd/mm/yyyy"
	GERMAN,			// "dd.mm.yyyy"
	ITALIAN,			// "dd-mm-yyyy"
	JAPAN,			// "yyyy/mm/dd"
	USA,				// "mm-dd-yyyy"
	MDY,				// "mm/dd/yyyy"
	DMY,				// "dd/mm/yyyy"
	YMD,				// "yyyy/mm/dd"
	GMT_SHORT,		// "Day, dd Mon yyyy hh:mm:ss" (assumendo GMT, ossia convertendo l'UTC in GMT)
	GMT,				// "Day, dd Mon yyyy hh:mm:ss <-|+>nnnn" (con l'UTC, ossia il <-|+>nnnn, locale)
	GMT_TZ,			// "Day, dd Mon yyyy hh:mm:ss <-|+>nnnn TZ" (con l'UTC, ossia il <-|+>nnnn, locale, dove TZ e' l'identificativo di tre caratteri per l'UTC)
	UNKNOW_DATEFORMAT	// ???
};

/*
	TIMEFORMAT
	tipo per i formati dell'ora
*/
enum TIMEFORMAT {
	HHMMSS = 0,		// "hh:mm:ss"
	HHMMSS_AMPM,		// "hh:mm:ss <AM|PM>"
	HHMMSS_SHORT,		// "hhmmss"
	HHMMSS_GMT_SHORT,	// "hh:mm:ss" (assumendo GMT, ossia convertendo l'UTC in GMT)
	HHMMSS_GMT,		// "hh:mm:ss <-|+>nnnn" (con l'UTC, ossia il <-|+>nnnn, locale)
	HHMMSS_GMT_TZ,		// "hh:mm:ss <-|+>nnnn TZ" (con l'UTC, ossia il <-|+>nnnn, locale, dove TZ e' l'identificativo di tre caratteri per l'UTC)
	UNKNOW_TIMEFORMAT	// ???
};

class CDateTime
{
public:
	// operatori
	CDateTime& operator=(const CDateTime& d);
	CDateTime& operator=(const CDateTime* d);

	// costruttori
	CDateTime(DATEFORMAT = UNKNOW_DATEFORMAT,TIMEFORMAT = UNKNOW_TIMEFORMAT,
			int dayofweek = -1,
			int day = -1, int month = -1,int year = -1,
			int hour = -1,int min = -1,  int sec = -1
			);
	CDateTime(const char* date,DATEFORMAT datefmt);

	// distruttore
	virtual ~CDateTime() {}
	
	// azzera l'oggetto
	void			Reset			(void);

	// data/ora di sistema e impostazione campi della struttura interna
	void				SetDate			(int dayofweek = -1,int day = -1,int month = -1,int year = -1);
	inline void		SetDayofWeek		(int dayofweek)				{m_Date.dayofweek = dayofweek;}
	inline void		SetDay			(int day)						{m_Date.day = day;}
	inline void		SetMonth			(int month)					{m_Date.month = month;}
	inline void		SetYear			(int year)					{m_Date.year = year;}
	
	void				GetDate			(int& dayofweek,int& day,int& month,int& year);
	inline int		GetDayofWeek		(void)						{return(m_Date.dayofweek);}
	inline int		GetDay			(void)						{return(m_Date.day);}
	inline int		GetMonth			(void)						{return(m_Date.month);}
	inline int		GetYear			(void)						{return(m_Date.year);}

	void				SetTime			(int hour = -1,int min = -1,int sec = -1);
	inline void		SetHour			(int hour)					{m_Time.hour = hour;}
	inline void		SetMin			(int min)						{m_Time.min = min;}
	inline void		SetSec			(int sec)						{m_Time.sec = sec;}
	
	void				GetTime			(int& hour,int& min,int& sec);
	inline int		GetHour			(void)						{return(m_Time.hour);}
	inline int		GetMin			(void)						{return(m_Time.min);}
	inline int		GetSec			(void)						{return(m_Time.sec);}

	const char*		Get12HourTime		(BOOL getsystime = TRUE);
	inline const char*	GetElapsedTime		(long seconds)					{return(GetElapsedTime((float)seconds));}
	const char*		GetElapsedTime		(float seconds);

	// formato
	inline void		SetDateFormat		(DATEFORMAT format)				{m_Date.format = format;}
	inline DATEFORMAT	GetDateFormat		(void)						{return(m_Date.format);}
	const char*		GetFormattedDate	(BOOL getsysdate = TRUE);
	inline void		SetTimeFormat		(TIMEFORMAT format)				{m_Time.format = format;}
	inline TIMEFORMAT	GetTimeFormat		(void)						{return(m_Time.format);}
	inline const char*	GetFormattedTime	(BOOL getsystime = TRUE);

	// conversioni	
	const char*		ConvertDate		(DATEFORMAT fmtsrc,DATEFORMAT fmtdst,const char* pdate,const char* ptime);
	const char*		ConvertTime		(TIMEFORMAT fmtsrc,TIMEFORMAT fmtdst,const char* pdate,const char* ptime);

	// operazioni
	int				DaysInMonth		(int month,int year);
	void				ModifyDateTime		(DATETIMEOBJECT type,int qta);

	// time zone
	int				GetDSTZone		(void);
	long				GetTimeZoneDiff	(void);
	const char*		GetTimeZoneName	(void);
	const char*		GetDSTZoneName		(void);

	// impostano i campi della struct interna con data/ora di sistema
	const char*		GetSystemDate		(void);
	void				GetSystemDate		(int& day,int& month,int& year);
	const char*		GetSystemTime		(void);
	void				GetSystemTime		(int& hour,int& min,int& sec);

	// verifica se si tratta di un anno bisestile
	BOOL				IsLeapYear		(int year);

private:
	// copia un oggetto sull'altro
	void				Copy				(CDateTime* date1,const CDateTime* date2);

	// ricavano data/ora del sistema
	const char*		GetOsDate			(void);
	const char*		GetOsTime			(void);
	
	struct DATE {
		DATEFORMAT format;						// formato
		char		datestr[MAX_DATE_STRING + 1];		// buffer interno usato per le conversioni (volatile)
		int		dayofweek;					// giorno della settimana
		int		day;							// giorno, mese, anno
		int		month;
		int		year;
		char		daystr[MAX_DATETIME_BUF + 1];
		char		monthstr[MAX_DATETIME_BUF + 1];
		char		yearstr[MAX_DATETIME_BUF + 1];
	};

	struct TIME {
		TIMEFORMAT format;						// formato
		char		timestr[MAX_TIME_STRING + 1];		// buffer interno usato per le conversioni (volatile)
		int		hour;						// ore, minuti, secondi
		int		min;
		int		sec;
		char		hourstr[MAX_DATETIME_BUF + 1];
		char		minstr[MAX_DATETIME_BUF + 1];
		char		secstr[MAX_DATETIME_BUF + 1];
	};

	void				LoadFromString		(const char* pdate,DATEFORMAT datefmt = GMT_SHORT,TIMEFORMAT timefmt = HHMMSS_GMT_SHORT);

	DATE m_Date;
	TIME m_Time;
};

#endif // _CDATETIME_H

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人综合在线观看| 91麻豆精东视频| 欧美日韩一区二区在线观看| 久久久欧美精品sm网站| 日韩精品一级二级| 一本色道久久综合亚洲91| 久久精品亚洲精品国产欧美| 视频一区二区中文字幕| 色综合天天综合网天天看片| 国产免费观看久久| 激情综合色播五月| 在线不卡免费欧美| 亚洲最新在线观看| 粉嫩嫩av羞羞动漫久久久| 日韩女优av电影在线观看| 亚洲成a天堂v人片| 在线视频你懂得一区二区三区| 中文字幕第一区二区| 国产乱码字幕精品高清av| 日韩午夜中文字幕| 日本午夜精品视频在线观看 | 日日夜夜一区二区| 色一区在线观看| 亚洲日本电影在线| 不卡一区在线观看| 国产女人aaa级久久久级| 国产一区二区福利| 久久亚洲影视婷婷| 精品在线播放免费| 欧美精品一区二区久久婷婷| 免费人成精品欧美精品| 欧美一级二级在线观看| 日韩高清一级片| 欧美久久久久久久久久| 午夜精品福利视频网站| 欧美日韩一区二区三区高清| 亚洲国产欧美一区二区三区丁香婷| 99久久精品免费| 亚洲私人影院在线观看| 91视频www| 亚洲激情自拍视频| 色菇凉天天综合网| 亚洲一二三区在线观看| 色婷婷av一区二区| 亚洲一区成人在线| 欧美另类z0zxhd电影| 香蕉影视欧美成人| 91精品国产色综合久久久蜜香臀| 日韩1区2区日韩1区2区| 日韩美女在线视频| 国产一区不卡在线| 日本一区二区三区四区| 不卡的av在线播放| 亚洲免费伊人电影| 欧美人xxxx| 精品一区免费av| 欧美激情一区二区三区四区| 91在线视频免费观看| 亚洲国产精品一区二区久久恐怖片 | 中文字幕一区二区三区视频| 91首页免费视频| 午夜视频在线观看一区二区三区| 欧美一区二区三区四区高清| 国产一区欧美二区| 国产精品亲子乱子伦xxxx裸| 色视频成人在线观看免| 日韩av在线播放中文字幕| 精品粉嫩超白一线天av| av电影在线观看不卡| 一区二区在线观看不卡| 91精品欧美福利在线观看| 国产中文字幕精品| 亚洲精选一二三| 欧美一区二区美女| 国产成人免费9x9x人网站视频| 亚洲欧美日韩国产手机在线| 678五月天丁香亚洲综合网| 国产毛片精品一区| 亚洲激情中文1区| 欧美sm美女调教| 91视频xxxx| 久久国产剧场电影| 亚洲欧洲日本在线| 91精品国产综合久久福利| 福利一区在线观看| 亚洲国产日韩a在线播放性色| 日韩免费高清av| 91蜜桃视频在线| 久久aⅴ国产欧美74aaa| 自拍偷拍亚洲欧美日韩| 日韩一区二区麻豆国产| 成人av高清在线| 日本系列欧美系列| 亚洲人成在线播放网站岛国| 91精品国产综合久久福利软件| 成人性生交大片免费看在线播放 | 曰韩精品一区二区| 日韩精品一区二区三区四区视频 | 国产老女人精品毛片久久| 一级日本不卡的影视| 久久久久99精品一区| 欧美日韩一二三区| 成人国产精品免费网站| 日韩中文字幕一区二区三区| 亚洲欧洲在线观看av| 精品免费视频一区二区| 欧美性猛交一区二区三区精品| 国产不卡高清在线观看视频| 日本aⅴ亚洲精品中文乱码| 亚洲美女在线一区| 国产欧美一区二区三区鸳鸯浴| 欧美怡红院视频| av成人老司机| 国产麻豆午夜三级精品| 日av在线不卡| 亚洲国产日日夜夜| 亚洲欧洲av在线| 久久先锋影音av鲁色资源网| 欧美日韩精品福利| 91国在线观看| voyeur盗摄精品| 国产成人精品影视| 精品制服美女久久| 午夜精品久久久久久久99水蜜桃| 亚洲日本乱码在线观看| 国产精品视频一二三区| 2欧美一区二区三区在线观看视频| 精品视频在线免费观看| 91官网在线免费观看| 99精品久久免费看蜜臀剧情介绍| 国产乱码精品一品二品| 久久不见久久见免费视频1| 日韩高清在线一区| 亚洲成人tv网| 亚洲高清在线精品| 亚洲国产日韩精品| 一个色在线综合| 亚洲最色的网站| 亚洲综合区在线| 亚洲一区二区欧美日韩| 亚洲欧美一区二区不卡| 亚洲欧洲三级电影| 国产精品国产三级国产a| 欧美国产一区视频在线观看| 国产日韩欧美电影| 欧美激情艳妇裸体舞| 日本一区二区三区在线不卡| 国产婷婷一区二区| 久久亚洲一区二区三区明星换脸| 精品久久久久一区二区国产| 日韩美女一区二区三区| 欧美sm美女调教| 久久无码av三级| 久久先锋影音av鲁色资源网| 久久久精品天堂| 久久精品一区二区三区不卡| 久久精品综合网| 国产精品网站一区| 中文字幕在线不卡一区二区三区| 国产精品久久久久久久久动漫 | 亚洲美女免费视频| 玉米视频成人免费看| 亚洲一线二线三线视频| 亚洲高清一区二区三区| 日韩和的一区二区| 捆绑调教一区二区三区| 国产在线不卡一区| 国产成人精品1024| 不卡视频在线观看| 色一区在线观看| 精品视频在线免费观看| 日韩欧美一级片| 国产亚洲制服色| 亚洲欧美影音先锋| 亚洲一区免费观看| 日本系列欧美系列| 国产乱码字幕精品高清av | 成人网在线播放| 一本久久a久久免费精品不卡| 欧美日韩一区中文字幕| 日韩欧美亚洲一区二区| 久久久国产精华| 亚洲女与黑人做爰| 婷婷亚洲久悠悠色悠在线播放| 久久国产生活片100| 岛国精品一区二区| 在线影院国内精品| 精品少妇一区二区三区免费观看| 久久精品夜色噜噜亚洲aⅴ| 亚洲欧美日韩在线不卡| 日韩精品一级二级| 国产精品99久久久久| 在线亚洲高清视频| 精品国产乱码久久久久久闺蜜| 国产日韩欧美一区二区三区综合| 亚洲天堂免费看| 麻豆专区一区二区三区四区五区| 国产91在线观看丝袜| 欧美怡红院视频| 久久久久久久久一|