C语言中的time.h下的函数总结

记录学习的第10天
今天记录一下C语言中的time.h头文件下的各种函数总结
go go go!
在这里插入图片描述
1、计时函数
C语言中的计时函数为clock(),相关的数据类型为clock_t;
很多时候,我们需要做一个计时器;
那么实现出一个计时器,就需要用到这个函数;
具体怎么用呢?
我们用代码来实现一下;
我用clock函数来计算一个函数所花费的时间;
在这里插入图片描述

long i=10000000L;
clock_t start,end;
//定义两个clock_t的变量;
start=clock();
//开始计时
while(i--);
end=clock();
//计时结束
double acc=(double)(end-start);
//计算差值输出
printf("%lf",acc);

程序实现出了代码中while循环所进行的时间,计时单元的长度为1毫秒,所以最小单位也是1毫秒;
我的输出结果为:
14.000000

2、获得日历时间
函数为time(),数据类型为time_t;
我们可以通过这个函数来获取当前时间,在某一个时间点上经过的秒数;
参考代码如下:

time_t t;
//定义一个time_t类型
t=time(NULL);
//获取当前时间
printf("%d",t);
return 0;

如果time函数中的参数为NULL,那么输出结果为当前时间距离1970年1月1日所经过的秒数;
我的输出结果为:
1588908622

3、获得日期和时间
首先呢,我们要了解一个和时间有关的结构体,为了方便我直接在网上截了图;
在这里插入图片描述
好像有点复杂,不过没关系,用起来很简单;
在这里插入图片描述
有两种获取当前时间的函数
gmtime(*time_t)是世界标准时间;
localtime(*time_t)是本地标准时间;
两个时间相差8小时;
下面用代码来看一下怎么用这两个函数;

struct tm *p;
time_t t;
t=time(NULL);
p=localtime(&t);
//获取本地标准时间输出
printf("%d点%d分%d秒\n",p->tm_hour,p->tm_min,p->tm_sec);
p=gmtime(&t);
//获取世界标准时间输出
printf("%d点%d分%d秒\n",p->tm_hour,p->tm_min,p->tm_sec);

很好理解吧;
我的输出结果为:
11点32分31秒
3点32分31秒

4、用固定格式输出时间
上面那种方法似乎有一点麻烦;
所以来一种稍微简单点的方法:
在这里插入图片描述
函数为:asctime();
具体用法用代码来解释:

struct tm *p;
time_t t;
t=time(NULL);
p=gmtime(&t);
//获取当前世界标准时间
printf("%s",asctime(p));
//输出
p=localtime(&t);
//获取本地当前标准时间
printf("%s",asctime(p));
//输出

意思也很好理解吧,输出结果为:

Fri May 08 03:15:55 2020
Fri May 08 11:15:55 2020
这是第一种标准化输出时间的方法;

还有一种更简单的!
在这里插入图片描述
所用函数为ctime();
代码来了!

time_t t;
t=time(NULL);
printf("%s",ctime(&t));

就三行!输出结果为:
Fri May 08 11:18:49 2020;
结果是本地当前的标准时间;

5、计算时间长度
在第一块中我们已经做了一个计时器,但它的精度为毫秒,我们可不可以做一个精度为秒的计时器呢
,当然可以!
在这里插入图片描述
所用函数:difftime(time_t,time_t);
返回值是double类型;
码来!(剑来!)

time_t start,end;
start=time(NULL);
//开始计时
system("pause");
//暂停
end=time(NULL);
//计时结束
printf("%f",difftime(end,start));

运行结果为:

请按任意键继续. . .
2.000000
一个精度为秒的计时器就做出来了!
在这里插入图片描述

6、还有6吗,没了,咱不会了,咱就会这些
今天就分享这些,如果还想掌握更多,那就自己再去找点别的吧
在这里插入图片描述
反正咱是没有其他的了;
ojbk,今天的分享到此结束,给自己点个赞;
好了,end;

猜你喜欢

转载自blog.csdn.net/weixin_46726346/article/details/105989956