获取系统时间,跨平台, windows 、Linux都适用

本文介绍了两种获取当前时间的方法:一种仅适用于Windows系统,利用`SYSTEMTIME`结构体通过`GetLocalTime`函数来实现;另一种则为跨平台方法,通过`time.h`中的`time`、`gmtime`等函数并考虑时区转换实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 只使用与windows 

#include <time.h>
#include <stdio.h>

char char_time[40] = {0};

SYSTEMTIME sysTime;
ZeroMemory(&sysTime,sizeof(sysTime));
GetLocalTime(&sysTime);
char char_time[40] = {0};
sprintf(char_time,"%04d-%02d-%02d-%02d-%02d-%02d",sysTime.wYear,sysTime.wMonth,
			sysTime.wDay,sysTime.wHour,sysTime.wMinute,sysTime.wSecond);

2. 跨平台的方法(windows和linux)

#include <time.h>
#include <stdio.h>

char char_time[40] = {0};

time_t tt;
time(&tt);
tt = tt + 8*3600;//transform the time zone
tm* t = gmtime(&tt);
sprintf(char_time,"%04d-%02d-%02d-%02d-%02d-%02d",
			t->tm_year+1900,t->tm_mon+1,
			t->tm_mday,t->tm_hour,
			t->tm_min,t->tm_sec);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值