C语言获取时间函数大全

一、最简单获取秒数的,windows和linux逗支持用time()函数,获取从1970年到现在过了多少秒,time_t其实是long int 类型

time_t start=time(NULL);

for(long i=0;i<10000000000;)

i+=1;

time_t end=time(NULL)

printf("经过了%d秒",end-start);

二、linux下的,使用gettimeofday()接口获取微秒级别的,tv.sec是秒,tv.usec是秒余下的微秒值。

#include <stdio.h>

#include <sys/time.h>

int main() {

struct timeval start, end;

gettimeofday( &start, NULL );

sleep(3);

gettimeofday( &end, NULL );

int timeuse = 1000000 * ( end.tv_sec - start.tv_sec ) + end.tv_usec - start.tv_usec;

printf("经过了%d微秒", timeuse);

return 0;

}

三、使用localtime函数把1970到现在经过的秒数转化为日期,

返回一个tm结构体,tm结构体定义为:

struct tm {

int tm_sec; //秒[0-59]

int tm_min; //分[0-59]

int tm_hour; //时[0-23]

int tm_mday; //日[1-31]

int tm_mon; //月份[0-11],0代表一月

int tm_year; //年份,需要加上1900

int tm_wday; //星期[0-6],0代表星期天

int tm_yday; //从每年1月1日开始的天数[0-365],0代表1月1日

};

函数原型:struct tm *localtime(const time_t *clock);需要把time_t类型的秒数传进去。

四、使用clock()函数,windows下是毫秒,linux下是微秒,这个是程序执行到函数调用经过的时钟滴答次数。

相关推荐
王老师青少年编程2 小时前
2025年12月GESP真题及题解(C++七级): 城市规划
c++·gesp·csp·信奥赛·七级·csp-s·提高组
寻星探路4 小时前
【算法专题】滑动窗口:从“无重复字符”到“字母异位词”的深度剖析
java·开发语言·c++·人工智能·python·算法·ai
我叫袁小陌4 小时前
C++多线程全面详解
开发语言·c++
m0_748250035 小时前
C++ 官方文档与标准
开发语言·c++
matlabgoodboy5 小时前
程序代做python代编程matlab定制代码编写C++代写plc设计java帮做
c++·python·matlab
DYS_房东的猫5 小时前
《 C++ 零基础入门教程》第6章:模板与 STL 算法 —— 写一次,用万次
开发语言·c++·算法
点云SLAM6 小时前
C++ 静态初始化顺序问题(SIOF)和SLAM / ROS 工程实战问题
开发语言·c++·slam·静态初始化顺序问题·工程实战技术·c++static 关键字
pen-ai6 小时前
打通 Python 与 C++ 的参数传递机制
开发语言·c++·python
王老师青少年编程7 小时前
信奥赛C++提高组csp-s之KMP算法详解
c++·kmp·字符串匹配·csp·信奥赛·csp-s·提高组
喵星人工作室7 小时前
C++传说:神明之剑0.4.5装备机制彻底完成
开发语言·c++·游戏