实现下一秒日期计算(简单的时钟)。
2017-06-03 12:51
393 查看
// NextSecond.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" class NextSecond { public: NextSecond(void) {} NextSecond(int year, int month, int day, int hour, int min, int sec) : m_year(year), m_month(month), m_day(day), m_hour(hour), m_min(min), m_sec(sec) {} void GetTime(void) { ++m_sec; if (m_sec > 59){ m_sec = 0; ++m_min; if (m_min > 59){ m_min = 0; ++m_hour; if (m_hour > 23){ m_hour = 0; ++m_day; if (m_day > GetMaxDay(m_year, m_month)){ m_day = 1; ++m_month; if (m_month > 12){ m_month = 1; ++m_year; } } } } } printf("\r%d-%02d-%02d %02d:%02d:%02d", m_year,m_month,m_day,m_hour,m_min,m_sec); } private: int m_year; int m_month; int m_day; int m_hour; int m_min; int m_sec; bool IsRunYear(int year) { if ((!(year % 4) && (year % 100)) || !(year % 400)) { return true; } return false; } int GetMaxDay(int year, int month) { if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) { return 31; } if (month == 4 || month == 6 || month == 9 || month == 10 || month == 11) { return 30; } if (IsRunYear(year)) { return 29; } return 28; } }; void * doit(void) { NextSecond t(2017, 5, 31, 19, 28, 41); while (true) { t.GetTime(); Sleep(1000); } } int main() { NextSecond t(2017, 12, 31, 23, 59, 51); while (true) { t.GetTime(); Sleep(1000); } return 0; }
相关文章推荐
- JS根据生日月份和日期计算星座的简单实现方法
- J2ME游戏开发中时钟的简单实现
- 在Asp.Net MVC中实现计算页面执行时间及简单流量统计
- 计算两个日期之间工作日天数(c#实现)
- 计算两个日期之间工作日天数(c#实现)
- 用简单的VBA实现Excel表格计算
- 用数组实现日期计算
- javascript实现简单日期下拉选择器
- MFC透明控件的超级简单实现--发布日期:2008-05-14 00:44
- c#实现通过出生日期计算岁,月,天
- 用js实现计算代码行数的简单方法附代码
- J2ME游戏开发中时钟的简单实现
- 用vbs实现的简单的服务器文件备份办法压缩文件名自动按日期命名
- J2ME游戏开发中时钟的简单实现
- [转帖]计算法简单实现crc校验
- [转帖]计算法简单实现crc校验
- J2ME游戏开发中时钟的简单实现
- 一个简单的JavaScript日期计算算法
- 简单的时间日期设置实现