计算从1970年到现在累计的秒数
没啥技术含量,只不过是在没事干,就把这个也记上,Windows下好像有这个api函数,但是在wince下用不了,所以还得自己封装一个。大体代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
/*the seconds of round year = 3600*24*366 */
#define SECONDOFROUNDYEAR 31622400
/*the seconds of general year = 3600*24*365 */
#define SECONDOFYEAR 31536000
unsigned int SecondsFrom1970()
{
SYSTEMTIME st;
unsigned int tTemp=0;
unsigned int tSecond=0;
int month_s[2][12]={{31,28,31,30,31,30,31,31,30,31,30,31},
{31,29,31,30,31,30,31,31,30,31,30,31}};
int nDays=0;
int nCount=0;
int i;
int j;
GetLocalTime(&st);
tSecond=st.wHour*3600+st.wMinute*60+st.wSecond;
for (i=1970;i<st.wYear;++i)
{
if (IsRound(i))
++nCount;
}
tTemp+=(st.wYear-1970-nCount)*SECONDOFYEAR+nCount*SECONDOFROUNDYEAR;
if (st.wMonth>1)
{
if (IsRound(st.wYear))
{
for (j=0;j<st.wMonth-1;++j)
{
tTemp+=month_s[1][j]*MAXSECONDOFDAY;
}
tTemp+=(st.wDay-1)*MAXSECONDOFDAY+tSecond;
}
else
{
for (j=0;j<st.wMonth-1;++j)
{
tTemp+=month_s[0][j]*MAXSECONDOFDAY;
}
tTemp+=(st.wDay-1)*MAXSECONDOFDAY+tSecond;
}
}
else
{
tTemp+=(st.wDay-1)*MAXSECONDOFDAY+tSecond;
}
return tTemp;
}
bool IsRound( int year)
{
/*is round year?*/
if ((year%100)&&(year%4==0)) return 1;
if ((year%100==0)&&(year%400==0)) return 1;
return 0;
}
|
计算从1970年到现在累计的秒数相关推荐
- C计算1970年到现在时间的秒数
//*********************************************** //函数功能:计算1970年到现在时间的秒数 //入口参数:Y,M,D,h,m,s当前的年,月,日, ...
- MySql计算两日期时间之间相差的天数,秒数,分钟数,周数,小时数
计算两日期时间之间相差的天数,秒数,分钟数,周数,小时数,这里主要分享的是通过MySql内置的函数 TimeStampDiff() 实现. 函数 TimeStampDiff() 是MySQL本身提供的 ...
- java 根据日期计算当前周一和周日,及根据秒数计算天小时分钟秒数等相关日期
日期工具类 import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; ...
- 计算两时间段的重合天/小时/分钟/秒数(末尾附完整代码)
说明: 有时候我们在计算时间时,有让获取两时间段重合的天数这种需求,小编也是遇到了这样的需求,就封装了一个工具类,希望能帮助到大家. 我们先进行分析 求两个时间段重合的天数,例如求(2022-05-0 ...
- 计算1970距今的秒数
第一种方法,可以直接使用date命令获取 date +%s -d '2017-1-1 12:30:00' 值得注意的是,这个秒数带了时区计算,所以得额外判断时区 写C函数计算 #define is_l ...
- 1970年1月1日到现在的秒数计算日期
1970年1月1日到现在的秒数计算日期 #include <stdio.h>int year=1970; int month=1; int day=1; int yuefen[12] = ...
- golang小案例 —— 1970 年1月1日到现在的时间秒数计算出现在的日期时间
根据1970 年1月1日到现在的时间秒数计算出CHINA现在的日期时间(考虑闰年,平年,时区等因素) package mainimport ("time""fmt&quo ...
- 音频通道数、采样频率、采样位数、采样个数(样本数)的概念及计算一帧音频的大小、每秒播放的音频字节大小、一帧的播放时长、音频重采样
对于下面data和linesize的解释(参考下面3.4中的av_samples_alloc_array_and_samples函数说明): 1)data是通道的意思,例如双通道,data[0]代表左 ...
- 时间字符串转换成自1970年1月1日以来持续时间的秒数
时间格式是:20180702 00:15:45,这个时间是我所需要的格式. time_t MriUIBI::convert_a_to_i(char * str_time) {struct tm tt; ...
最新文章
- PyInstaller库的使用
- 微信小程序把玩(十一)icon组件
- Careercup - Google面试题 - 5424071030341632
- Git SSH key配置
- golang杀死java_用Golang来保护Java程序-Go语言中文社区
- php curl 发送checkbox,使用curl 提交表单(多维数组+文件)数据到服务器的有关问题...
- 7-将本地的javaweb项目部署到Linux服务器的一般操作
- 数据分析与R语言视频教程
- 左程云代码java_《程序员代码面试指南》-左程云高清PDF+源代码
- figtree需要在JAVA下运行吗_用一个Java程序出问题了
- win10和win8双系统安装
- Network | Socket连接建立步骤
- C#通过类的继承来实现判断任意一个三角形并求出它们的周长及面积(等腰三角形,等边三角形,直角三角形,等腰直角三角形)
- 华为鸿蒙系统失败,世界首富很无奈,第三大手机系统失败,华为鸿蒙会成功吗...
- java jmf获取图像_用JMF打开摄像头获取图像
- 2019年最佳WordPress社交媒体插件
- 【解决方案】AI视频结构化智能安防平台EasyCVR保护小区居民安全智能监控方案
- 百度搜索技术沙龙感悟
- 如何快速产生流量,流量精灵使用方法
- 神经网络(十)激活函数DLC
热门文章
- 用Java实现非阻塞通信
- 【ROS学习笔记】(八)服务数据的定义与使用
- 数据结构笔记(十四)-- 串的模式匹配算法
- 没有php5.sowenjian_(转)LINUX下PHP编译添加相应的动态扩展模块so(不需要重新编译PHP,以openssl.so为例...
- android 同步list数据,android SharedPreferences保存list数据
- oracle数据块坏,Oracle数据块损坏解决办法
- android都图片mat_普通Android码农,该如何逆袭月薪5W的移动端架构师?
- 高度为5的3阶b树含有的关键字个数_B-树和B+树的应用:数据搜索和数据库索引...
- 查看mysql5.7默认密码_mysql-5.7安装部署+MySQL5.7初始密码查看及重置
- c++ floor 赋值_C++之floor函数