C语言里面和时间有关的函数
参考链接
https://blog.csdn.net/ffcjjhv/article/details/83376767
0)Head file
#include "time.h"
1) 结构定义,
主要是3个结构,time_t,clock_t和tm
特别注意year,month的范围和我们常用的年月不一样,年是相对于1900/1970年的,月是从0到11的。
struct time_t ;
//X64(X86 32bit)系统里面是1900(1970)年到现在经过了多少秒,
struct clock_t ; struct tm {
int tm_sec; // 秒,正常范围从 0 到 59,但允许至 61
int tm_min; // 分,范围从 0 到 59
int tm_hour; // 小时,范围从 0 到 23
int tm_mday; // 一月中的第几天,范围从 1 到 31
int tm_mon; // 月,范围从 0 到 11
int tm_year; // 自 1900 年起的年数
int tm_wday; // 一周中的第几天,范围从 0 到 6,从星期日算起
int tm_yday; // 一年中的第几天,范围从 0 到 365,从 1 月 1 日算起
int tm_isdst; // 夏令时
2)主要的函数
互相转换类函数
[]转换成字符串显示类函数 char asctime(const struct tm timeptr);
//将tm结构体中的信息转换为真实世界的时间,以字符串的形式显示 char ctime(const time_t timep);
//将time_t结构转换为真是世界的时间,以字符串显示 []两种结构互相转换的函数 struct tm* gmtime(const time_t* timep);
//将time_t表示的时间转换为没有经过时区转换的UTC时间,是一个struct tm结构指针 struct tm* localtime(const time_t* timep);
//和gmtime类似,但是它是经过时区转换的时间 time_t mktime(struct tm* timeptr);
//将struct tm 结构的时间转换为从1970年至今的秒数 []系统相关的函数
clock_t clock() ;
//进程起来时候(或者是开机时候,或者是别的什么固定时间点)到现在,处理器运行的时钟。
time_t time(time_t* t);
//取系统当前的时间,放在time_t结构里面
double difftime(time_t time1, time_t time2)
//两个时间之间相差多少 //print 运行时间的示例代码
void TimeTrack(unsigned char * text) {
static clock_t begin_time=;
clock_t this_time=clock();
if ( == begin_time) {
printf("<TIME-Track>: Begin of Time Track \n");
begin_time = this_time ;
}else{
printf("<TIME-Track>: {%s}=%f\n",text,(float) (this_time-begin_time) / CLOCKS_PER_SEC );
}
}
另一种利用time()的方法
void TimeTrack(unsigned char * text) {
static int begin_time=0;
static time_t begin ;
time_t this_time;
time(&this_time);
if (0 == begin_time) {
printf("<TIME-Track>: Begin of Time Track \n");
memcpy(&begin,&this_time,sizeof(time_t)) ;
begin_time = 1;
}else{
printf("<TIME-Track>: {%s}=%f\n",text,difftime (this_time , begin) );
}
}
系统相关函数
C语言里面和时间有关的函数的更多相关文章
- SqlServer中日期和时间数据类型及函数 【转】
来源:http://blog.csdn.net/royalwzy/article/details/6446075 日期和时间数据类型 下表列出了 Transact-SQL 的日期和时间数据类型. 数据 ...
- MySQL时间戳和时间格式转换函数
MySQL时间戳和时间格式转换函数:unix_timestamp and from_unixtime unix_timestamp将时间转化成时间戳格式.from_unixtime将时间戳转化成时间格 ...
- mysql 时间字段的函数 timestamp
Mysql 里格式 时间字段的函数 DATE_FORMAT unix_timestamp - 墨墨修行的日志 - 网易博客http://jjuanxi.blog.163.com/blog/static ...
- [php基础]Mysql日期函数:日期时间格式转换函数详解
在PHP网站开发中,Mysql数据库设计中日期时间字段必不可少,由于Mysql日期函数输出的日期格式与PHP日期函数之间的日期格式兼容性不够,这就需要根据网站实际情况使用Mysql或PHP日期转换函数 ...
- Swift - 时间控制器NSTimer(每隔一定时间执行某个函数)
时间控制器NSTimer可以实现定时器功能,即每隔一定时间执行具体函数,可以重复也可以只执行一次. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 cl ...
- [转]详细的mysql时间和日期函数
这里是一个使用日期函数的例子.下面的查询选择了所有记录,其date_col的值是在最后30天以内: mysql> SELECT something FROM table WHERE TO_DAY ...
- C 语言实现多态的原理:函数指针
C语言实现多态的原理:函数指针 何为函数指针?答案:C Programming Language. 能够查阅下,从原理上来讲,就是一个内存地址.跳过去运行相应的代码段. 既然如此,在运行时决定跳到哪个 ...
- Python 关于时间和日期函数使用 -- (转)
python中关于时间和日期函数有time和datatime 1.获取当前时间的两种方法: import datetime,time now = time.strftime("%Y-%m ...
- lua的时间和日期函数
lua的时间和日期函数 -- ::| 分类: Lua | 标签:lua 时间 函数 |举报|字号 订阅 下载LOFTER客户端 --获取当前的时间戳,单位是秒. time=os.time(); pri ...
随机推荐
- SRS命令
下载源码: git clone https://github.com/ossrs/srs.git 编译: cd srs/trunk ./configure && make 开启服务: ...
- Redis 的使用
1. 概念: redis是一款高性能的NOSQL系列的非关系型数据库 1.1.什么是NOSQL NoSQL(NoSQL = Not Only SQL),意即"不仅仅是SQL",是一 ...
- [转]ubuntu备份与恢复
在 使用Ubuntu之前,相信很多人都有过使用Windows系统的经历.如果你备份过Windows系统,那么你一定记忆犹新:首先需要找到一个备份工 具(通常都是私有软件),然后重启电脑进入备份工具提供 ...
- Python用户界面编程PyQt5的四种的布局方式
1.QT是C++编写的跨平台GUI库,GUI是指桌面程序应用. 2.开发基于pyqt5的桌面应用程序必须要使用两个类Qapplication和Qwidget类,都在PyQt5.Qt.widgets里面 ...
- Maven项目- get请求的乱码问题,使用tamcat7出现乱码的解决方法
get请求的乱码问题: 解决方法: 手动处理编码
- Unity3d fbx纹理不显示 原因
Unity3d 导入fbx文件后纹理不显示(3ds Max中显示正常) 原因: 1.纹理图片没有导入fbx同一文件夹中 2.纹理图片没有在fbx文件之前导入(现导入纹理图片,再导入fbx文件)
- 5.9 Nginx的配置优化
- 18 SQL优化
1.SQL语句优化的一般步骤 1).了解各种SQL的执行频率 客户端连接成功后,可以通过SHOW [SESSION | GLOBAL] STATUS 命令来查看服务器状态信 ...
- ubuntu安装discourse论坛----结合在apache服务上建立虚拟主机
指导操作:https://github.com/discourse/discourse/blob/master/docs/INSTALL-cloud.md 一.先安装 Docker / Git: wg ...
- 南邮平台之Hello,RE!
小白闲逛了一下南邮平台看到了逆向这题,小白在网上看了一下别人的write up发现有点复杂.于是小白就试试看,直接Underfine然后结果就出来了.....有点意外...... 结果flag{Wel ...