time()等时间函数的使用
来源:互联网 发布:1hhhh.com域名升级访问 编辑:程序博客网 时间:2024/05/21 08:55
一、time函数
函数名:time()
功能:获取当前的系统时间
用法:time_ttime(time_t * time)
对应的头文件:time.h
说明:
time函数的返回值是long的类型,
其精度为秒,
其形参一般选为NULL(即time(NULL)).
其值为从CUT(CoordinatedUniversal Time)时间(即1970年1月1日00:00:00,也就是UNIX系统的Epoch时间)到当前时刻的秒数,但因为“time_t“使用一个有符号的32位整数(signed int32)来存储计算的秒数,所以其最后时间是2147483647秒(也就是格林乔治时间2038年1月19日凌晨03:14:07),但就是个小知识点,不用太关心。
因为time的精度为秒,所以如果对一些时间要求更精确点,便得使用精度更高的时间函数,不然其结果就会如下面的程序一样,结果一直一样,这是因为短期的循环计算机不会花费太多的时间。
# include
二、更高精度的时间函数
1、gettimeofday
函数名:gettimeofday
功能:获取当前的精确系统时间
用法:int gettimeofday(structtimeval * tv,struct timezone *tz);
对应的头文件:sys/time.h
说明:
其参数tv是保存获取时间结果的结果体,参数tz用于保存时区结果:
struct timezone{
inttz_minuteswest; //格林威治时间往西方的时差
inttz_dsttime; //DST时间的修正方式
}
timezone参数若不使用则可设为NULL(如:gettimeofday(tv,NULL)),
struct timeval{
long int tv_sec; //秒数
long int tv_usec; //微妙数
}
使用gettimeofday()函数还需要先定义一下struct timeval的变量,
而使用gettimeofday()获得的时间的精度会精确到微妙(1e-6s)量级。
其值为从CUT(CoordinatedUniversal Time)时间(即1970年1月1日00:00:00,也就是UNIX系统的Epoch时间)到当前时刻的秒数,其也与time一样存在着2038年的问题。
但它是适用于Linux系统的,在windows下面使用比较麻烦,而windows也存在这类似功能的函数。
2、GetLocalTime
函数名:GetLocalTime
功能:获取当前的精确系统时间
用法:voidGetLocalTime(LPSYSTEMTIME lpSystemtime)
对应的头文件:windows.h
说明:
其参数lpSystemtime是指向一个用户自定义包含日期和时间信息的SYSTEMTIME类型的变量,该变量可用于保存函数获取的时间。
typedef struct SYSTEMTIME{
WORD wYear; //年
WORD wMonth; //月
WORD wDayOfWeek; //星期,0为星期日,1为星期一,2为星期二……
WORD wDay; //日
WORD wHour; //时
WORD wMinute; //分
WORD wSecond; //秒
WORD wMilliseconds; //毫秒
}SYSTEMTIME,*PSYSTEMTIME;
一般将GetLocalTime转化为gettimeofday来提高程序在windows和Linux的通用性。
#include
3、GetTickCount函数
函数名:GetTickCount
功能:获取当前的精确系统时间
用法:DWROD GetTickCount(void)
对应的头文件:windows.h
说明:
其返回了从操作系统启动所经过的毫秒数,其返回值为32位的双字类型DWROD。
# include
{
int time_first = 0;
int time_end = 0;
time_first = (int)(GetTickCount());
while (1){
for (int i = 0; i < 1000; i++)
for (int j = 0; j < 10000; j++);
time_end = (int)(GetTickCount());
if (time_end >(time_first + n))
break;
}
}
- time()等时间函数的使用
- 函数time的使用
- time时间相关的一些函数
- python---控制时间的函数time()
- time.h时间函数
- joda-time时间框架的使用
- CodeIgniter使用time等函数报warning错误
- <C/C++>日期和时间的使用(time相关函数大全)
- STM32使用C标准库time.h里面的时间时钟函数
- time()函数--关于时间函数有用的总结
- 利用time的函数计算N+_天的时间
- 时间函数的使用
- 时间函数的使用
- C++中time时间函数的一个简单实例
- Linux/Unix time时间戳的处理转换函数
- linux 上时间相关的函数 time ,_ftime , gettimeofday, clock_gettime
- Linux/Unix time时间戳的处理转换函数
- C/C++中关于时间的函数 time()
- android与h5经验
- mysql优化(二)执行计划解读Explain语法
- redis、mongodb、mysql的区别
- Mysql时间函数
- QT中QWidget、QDialog及QMainWindow的区别
- time()等时间函数的使用
- 2017-7-21
- Tomcat安装配置
- SQlite数据库的C编程接口(一) 简介 ——《Using SQlite》读书笔记
- ios 计算代码耗时
- 服务器返回数据的json处理
- 机器人走方格
- 【剑指offer】面试题25:合并两个排序的链表
- tf.is_finite(x, name=None)