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 ...
随机推荐
- 分支预测(branch prediction)
记录一个在StackOverflow上看到一个十分有趣的问题:问题. 高票答案的优化方法: 首先找到罪魁祸首: if (data[c] >= 128) sum += data[c]; 优化方案使 ...
- request和response对象如何解决中文乱码问题?
出现中文乱码的问题,一般的原因编码和和解码不一致造成的. /* 乱码:编码和解码不一致导致的 GET:你好 POST:?????? tomcat版本:8.5及以上版本 GET请求方式,request对 ...
- Python爬虫教程-爬取5K分辨率超清唯美壁纸源码
简介 壁纸的选择其实很大程度上能看出电脑主人的内心世界,有的人喜欢风景,有的人喜欢星空,有的人喜欢美女,有的人喜欢动物.然而,终究有一天你已经产生审美疲劳了,但你下定决定要换壁纸的时候,又发现网上的壁 ...
- 列举mvc ActionResult的返回值
8.列举ASP.NET MVC ActionResult的返回值有几种类型? 主要有View(视图).PartialView(部分视图).Content(内容).Json(Json字符串).Javas ...
- 四 动态sql 标签的使用(if&where&sql片段&foreach)
if标签的使用: userMapper.xml userMapper.java junit: where标签: 注意:写了where标签就不用手动写where语句 sql片段的设置和调用: forr ...
- Python print()函数
#输出单个数据,会自动输出回车换行 print(1) print(2) #输出 1 2 #输出换行 print('\n') #防止换行 for x in range(0, 5): print(x, e ...
- INUX下抓取当前登录用户登录密码的工具:mimipenguin
前有Mimikatz,今有mimipenguin,近日国外安全研究员huntergregal发布了工具mimipenguin,一款Linux下的密码抓取神器,可以说弥补了Linux下密码抓取的空缺. ...
- Docker 基础入门
Docker是一个开放的平台,将应用和基础设施分隔开来, 方便快速的交付软件.利用docker的提供的方法可以快速的测试和部署代码,显著的减少写代码和部署直接的延迟. Docker 平台(The Do ...
- C++服务器与java进行socket通信案例
分类: [java]2012-10-08 12:03 14539人阅读 评论(46) 收藏 举报 注:本代码版权所有!!!转载时请声明源地址:http://blog.csdn.net/nuptboyz ...
- 吴裕雄--天生自然JAVA数据库编程:事务处理
DROP TABLE user ; -- 删除表 CREATE TABLE user( id INT AUTO_INCREMENT PRIMARY KEY , name VARCHAR(30) NOT ...