C语言获取当前时间

简介: C语言获取当前时间

1 使用time_t time( time_t * timer ) 精确到秒


头文件:time.h


函数原型:time_t time(time_t * timer)


功能: 获取当前的系统时间,返回的结果是一个time_t类型,其实就是一个大整数,其值表示从CUT(Coordinated Universal Time)时间1970年1月1日00:00:00(称为UNIX系统的Epoch时间)到当前时刻的秒数。


time_t time1;
time(&time1);


2 使用clock_t clock() 得到的是CPU时间 精确到1/CLOCKS_PER_SEC秒


clock()是C/C++中的计时函数,而与其相关的数据类型是clock_t。


对clock函数定义如下:clock_t clock(void) ;


简单而言,就是该程序从启动到函数调用占用CPU的时间。这个函数返回从“开启这个程序进程”到“程序中调用clock()函数”时之间的CPU时钟计时单元(clock tick)数,在MSDN中称之为挂钟时间(wal-clock);若挂钟时间不可取,则返回-1。其中clock_t是用来保存时间的数据类型,在time.h文件中


clock_t start, finish;
start = clock();


上面我们看到时钟计时单元的长度为1毫秒,那么计时的精度也为1毫秒,那么我们可不可以通过改变CLOCKS_PER_SEC的定义,通过把它定义的大一些,从而使计时精度更高呢?通过尝试,你会发现这样是不行的。在标准C/C++中,最小的计时单位是一毫秒。


3 计算时间差使用double difftime( time_t timer1, time_t timer0 )


4 使用DWORD GetTickCount() 精确到毫秒


GetTickCount(),这个是windows里面常用来计算程序运行时间的函数;


DWORD dwStart = GetTickCount();


//这里运行你的程序代码


DWORD dwEnd = GetTickCount();


则(dwEnd-dwStart)就是你的程序运行时间, 以毫秒为单位


这个函数只精确到55ms,1个tick就是55ms。


5 要获取高精度时间,可以使用


BOOL QueryPerformanceFrequency(LARGE_INTEGER *lpFrequency)

获取系统的计数器的频率


BOOL QueryPerformanceCounter(LARGE_INTEGER *lpPerformanceCount)

获取计数器的值


然后用两次计数器的差除以Frequency就得到时间。


目录
相关文章
|
2月前
|
存储 Serverless C语言
【C语言】时间函数详解
在C语言中,时间处理功能由标准库 `time.h` 提供。使用这些函数时,需要包含 `#include <time.h>` 头文件。以下是一些常用的时间函数的详细讲解,包括函数原型、参数说明、返回值说明以及示例代码和表格汇总。
61 9
|
C语言 C++ 编译器
C语言之时间函数
在我们时间编程的时候,难免会遇到时间函数,在项目中计算现在时间以及程序中某个动作运行的时间都需要用到时间函数,在大多数入门级别的C语言以及C++语言书籍中很少提及到,大多时候需要在网上查询,今天小编在工作之余给大家整理一个时间函数例子,希望初学者能够了解简单时间函数,为以后的高层开发打好基础。
598 0
|
C语言
C语言中格式化日期时间ctime()函数
C语言中格式化日期时间ctime()函数 函数原型:char *ctime(const time_t *time); 功能说明:将time_t类型日期和时间转换为字符串。
1528 0
|
C语言
C语言100题练习计划 05——这一天是这一年的第几天?
C语言100题练习计划 05——这一天是这一年的第几天?
218 0
C语言100题练习计划 05——这一天是这一年的第几天?
|
C语言
C语言 时间函数的学习
一直都是以简单的time_t t,time(&t),ctime(&t)来表示时间,后来要以时间为日志文件的名字时,就有点蒙逼了。学习一下。 tm结构: struct tm { int tm_sec; /* 秒 – 取值区间为[0,59] */ int tm_min; /*...
1201 0
|
C语言 C++ 数据格式
C语言 时间函数的学习和总结
一直都是以简单的time_t t,time(&t),ctime(&t)来表示时间,后来要以时间为日志文件的名字时,就有点蒙逼了。学习一下。   ```cpp tm结构: struct tm {        int tm_sec; /* 秒 – 取值区间为[0,59] */    ...
903 0
C语言格式化字符串
简介:C语言格式化字符串
C语言格式化字符串
C语言时间处理函数
C语言时间处理函数
|
C语言
C语言中获得本地日期
C语言中获得本地日期
95 0

热门文章

最新文章