计算从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; ...
最新文章
- 模糊综合评价法用什么软件实现_基于建管养一体化模式的钢桥面铺装方案综合评价分析...
- Project Explore 再现
- POJ 1057 File Mapping 最详细的解题报告
- oracle数据库第八章答案,Oracle培训(三十)——Oracle 11g 第八章知识点小结——处理数据...
- I00029 C语言程序-打印九九乘法表
- 密码学专题 口令输入的方式
- 传统手工特征--opencv
- 大三软件工程小项目-小技术集合-读取XML文件及运行外部程序
- 如何在Hyper-V上安装Centos7
- HLA程序:HelloWorld.hla
- Lambda 表达式与 Stream
- 计算机台账管理工作总结,台账工作总结(共6篇汇总).doc.docx
- 【并查集】亲戚(Relations)
- 一级b类计算机考试题目和类型,第五章计算机一级B类高职考试习题资料.doc
- 数据降维(四)ISOMAP
- 如何官网下载 IEEE 论文 Latex 和 Word 模板
- tplink怎样设置虚拟服务器,tplink怎么设置虚拟服务器
- 无线ap 热图测试软件,无线AP功能测试
- 内网通道构建——socks
- 资深程序员雷总对代码的执念
热门文章
- python 连接sql server
- [JSOI2008]最大数maxnumber
- 一些关于虚拟交易的有趣文章
- C/C++的memset函数的说明和使用
- (三)图像的放大和缩小
- Python配置opencv并在命令行运行
- 安徽省级办公室高级应用计算机二级,2019年9月安徽省计算机等级二级考试教程:二级MSOffice高级应用上机指导...
- 任天堂 虚拟主机服务器,任天堂 虚拟主机服务器
- 两台具有独立操作系统的计算机,第1章计算机网络习题与思考题参考答案
- html代码放进json数据,用json数据填充html表