⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 clock.cpp

📁 Mysql的处理
💻 CPP
字号:
#include "Clock.h"#include <time.h>#include <string.h>#include <stdlib.h>#include <stdio.h>C_Clock::C_Clock(){	}C_Clock::~C_Clock(){	}int C_Clock::DivisibleUnits( int x, int y, int z ) const{	int nDiv = (x-y)/z;	nDiv = nDiv > 0 ? nDiv:-nDiv;	int lower = x<y ? x : y;	nDiv += (lower%z) ? 0 : 1;		return nDiv;}int C_Clock::LeapYearsBetween( int x, int y ) const{	return DivisibleUnits(x,y,4) - DivisibleUnits(x,y,100) + DivisibleUnits(x,y,400);}int C_Clock::isLeapYear() const{	return LeapYearsBetween( year, year );}int C_Clock::GetDaysInMonth() const{	return GetDaysInMonth( mon );}int C_Clock::GetDaysInMonth( int i ) const{	int md[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };	return (i==2 && isLeapYear()) ? 29 : md[i-1];}void C_Clock::IncSec( int sec_inc ){	if ( sec_inc < 0 )	{		DecSec( -sec_inc );		return;	}		sec = sec + sec_inc;	int m_inc = sec / 60;	sec = sec % 60;		if (m_inc)		IncMin(m_inc);}void C_Clock::IncMin( int min_inc ){	if ( min_inc < 0 )	{		DecMin( -min_inc );		return;	}		minute = minute + min_inc;	int h_inc = minute / 60;	minute = minute % 60;		if (h_inc)		IncHour(h_inc);}void C_Clock::IncHour( int hour_inc ){	if ( hour_inc < 0 )	{		DecHour( -hour_inc );		return;	}		hour = hour + hour_inc;	int d_inc = hour / 24;	hour = hour % 24;		if (d_inc)		IncDay(d_inc);}void C_Clock::IncDay( int day_inc ){	if ( day_inc < 0 )	{		DecDay( -day_inc );		return;	}		while (day_inc)	{		int dim = GetDaysInMonth();		int DaysLeftInMonth = dim - mday;				if ( day_inc <= DaysLeftInMonth )		{			mday = mday + day_inc;			day_inc = 0;		}		else		{			day_inc -= DaysLeftInMonth;			IncMonth();			mday = 0;		}	}}void C_Clock::IncMonth( int mon_inc ){	if ( mon_inc < 0 )	{		DecMonth( -mon_inc );		return;	}		mon = mon + mon_inc;	int y_inc = (mon-1) / 12;	mon = (mon-1) % 12 + 1;		if (y_inc)		IncYear(y_inc);}void C_Clock::IncYear( int year_inc ){	if ( year_inc < 0 )	{		DecYear( -year_inc );		return;	}		year = year + year_inc;}void C_Clock::DecSec( int sec_inc ){	if ( sec_inc < 0 )	{		IncSec( -sec_inc );		return;	}		int m_inc = sec_inc / 60;	sec_inc %= 60;	if (sec_inc > sec)	{		m_inc++;		sec_inc-=60;	}	sec = sec - sec_inc;		if (m_inc)		DecMin(m_inc);}void C_Clock::DecMin( int min_inc ){	if ( min_inc < 0 )	{		IncMin( -min_inc );		return;	}		int h_inc = min_inc / 60;	min_inc %= 60;	if (min_inc > minute)	{		h_inc++;		min_inc-=60;	}	minute = minute - min_inc;		if (h_inc)		DecHour(h_inc);}void C_Clock::DecHour( int hour_inc ){	if ( hour_inc < 0 )	{		IncHour( -hour_inc );		return;	}		int d_inc = hour_inc / 24;	hour_inc %= 24;	if (hour_inc > hour)	{		d_inc++;		hour_inc-=24;	}	hour = hour - hour_inc;		if (d_inc)		DecDay(d_inc);}void C_Clock::DecDay( int day_inc ){	if ( day_inc < 0 )	{		IncDay( -day_inc );		return;	}		while (day_inc)	{		if ( day_inc < mday )		{			mday = mday - day_inc;			day_inc = 0;		}		else		{			DecMonth();			day_inc -= mday;			mday = GetDaysInMonth();		}	}}void C_Clock::DecMonth( int mon_inc ){	if ( mon_inc < 0 )	{		IncMonth( -mon_inc );		return;	}		int y_inc = mon_inc / 12;	mon_inc %= 12;	if (mon_inc > mon - 1)	{		y_inc++;		mon_inc-=12;	}	mon = mon - mon_inc;		if (y_inc)		DecYear(y_inc);}void C_Clock::DecYear( int year_inc ){	if ( year_inc < 0 )	{		IncYear( -year_inc );		return;	}		year = year - year_inc;}char* C_Clock::Get(const char* sz, int nLength, bool bPlus, int hh2, int mi2){	char* p = (char*)sz;		if(nLength != 10)	{		return "";	}		char tmp[10];	tmp[2] = 0;	memcpy(tmp, &sz[0], 2);	year	= atoi(tmp);	memcpy(tmp, &sz[2], 2);	mon		= atoi(tmp);	memcpy(tmp, &sz[4], 2);	mday	= atoi(tmp);	memcpy(tmp, &sz[6], 2);	hour	= atoi(tmp);	memcpy(tmp, &sz[8], 2);	minute	= atoi(tmp);	sec		= 0;		_hour	= hh2;	_minute	= mi2;		if(bPlus)	{		if(_minute != 0)			IncMin(_minute);				if(_hour != 0)			IncHour(_hour);	}	else	{		if(_minute != 0)			DecMin(_minute);		if(_hour != 0)			DecHour(_hour);	}		snprintf(m_nFormatString, 20, "%02d%02d%02d%02d%02d",		year, mon, mday,		hour, minute);		return m_nFormatString;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -