C标准库-时间函数

时间函数

time函数

c 复制代码
time_t time(time_t* tloc);

功能:获取自1970-01-01 00:00:00 到当前的秒数

tloc:若传入非空指针,函数会把"秒数"结果写入变量中,若传入NULL函数仅返回秒数,但不写入变量。

返回值:成功返回秒数,失败返回错误码并设置errno

localtime函数

c 复制代码
struct tm* localtime(const time_t* timep)

功能:将time_t的秒数转换为tm结构体

timp:秒钟变量的地址

返回值:成功返回tm结构体,失败返回NULL并设置相应的错误码

tm结构体

c 复制代码
struct tm {
	int tm_sec; //秒(0-60)
	int tm_min; //分(0-59)
	int tm_hour; //小时(0-23)
	int tm_mday; //日(1-31)
	int tm_mon; //月(0-11)
	int tm_year; //年(Year - 1900)
	int tm_wday; //星期(0-6 Sunday=0)
	int tm_yday; //年中的第几天(0-365 1 Jan = 0)
	int tm_isdst; //夏令时
};

实例

c 复制代码
#include <time.h>
#include <stdio.h>

int main(void)
{
	time_t now = time(0);
	struct tm* tstruct = localtime(&now);
	fprintf(stdout,"Current time:%d\n", &now);
	fprintf(stdout,"%04d-%02d-%02d %02d:%02d:%02d\n",
		tstruct->tm_year + 1900, tstruct->tm_mon, tstruct->tm_mday,
		tstruct->tm_hour, tstruct->tm_min, tstruct->tm_sec);

	return 0;
}

运行结果:

相关推荐
代码中介商14 小时前
银行管理系统的业务血肉 —— 流程、状态机、输入校验与持久化(下篇)
c语言·算法
爱编码的小八嘎16 小时前
C语言完美演绎9-12
c语言
Navigator_Z18 小时前
LeetCode //C - 1031. Maximum Sum of Two Non-Overlapping Subarrays
c语言·算法·leetcode
leoufung1 天前
LeetCode 30:Substring with Concatenation of All Words 题解(含 C 语言 uthash 实现)
c语言·leetcode·c#
爱编码的小八嘎1 天前
C语言完美演绎9-6
c语言
SunnyByte1 天前
线性表——单链表的增删查改操作
c语言·单链表
SunnyByte1 天前
线性表——双向链表
c语言·链表
jimy11 天前
C 语言的 static 关键字作用
c语言·开发语言·算法
handler011 天前
算法:图的基本概念
c语言·开发语言·c++·笔记·算法·图论
木木_王1 天前
嵌入式Linux学习 | 数据结构 (Day03)顺序表与单链表 超详细解析(含 C 语言实现 + 作业 + 避坑指南)
linux·c语言·数据结构·学习