-
#include
#include
int main()
time_t rawtime;
struct tm * timeinfo;
time ( rawtime );
timeinfo = localtime ( rawtime );
return 0;
描述:时间 T 时间类型(定义)。
struct tm { 时态结构,定义如下:
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
time ( rawtime );采集时间(以秒为单位)从 1970 年 1 月 1 日开始计算,并以原始时间存储
localtime ( rawtime );转换为本地时间,TM 时间结构。
asctime() 转换为标准 ASCII 时间格式:
就是直接打印tm,tm年是从1900年开始计算的,所以要加上1900,而monthtm mon,从0开始计算,所以要加1
-
#include ""
#include ""
int main()
time_t rawtime;
time_t tt=1380405623;t 是原始时间,可以用 time(&tt) 获得。
time ( rawtime );获取时间时间 时间单位为毫秒。
printf ( "目前是 %d 周",1+(rawtime-tt)/(7*24*3600));每周 7 天,每天 24 小时,每小时 3600 秒。
return 0;
-
将第一次转换为 posix 时间。
将此时间转换为 posix 时间。
两个文件时间减去一个。
除以 7*24*3600 并四舍五入到周数。
所谓的POSIX时间是由一个标准定义的:它被定义为从1970年1月1日00:00:00 GMT到现在的总秒数。
Windows 和 Linux 下有现成的功能可用于转换。
就是这个想法。
让我们自己编写具体的代码。
-
Win32 有一个 getsystemtime 函数,该函数可以获取 systemtime 结构,其中包含一年中的当前周、星期几等。
-
时间 T 是重新定义的长整数结构。
调用 time 函数获取时间,并返回秒数。
当前时间需要通过调用localtime进行转换。
struct tm ;
-
1. C语言中读取系统时间的函数是time(),其函数原型是:
#include
time_t time( time_t *
时间 t 很长,该函数返回从 1970 年 1 月 1 日 0:00:00 开始的秒数(MFC 为 1899 年 12 月 31 日)。
2. C语言还提供了一个将秒数转换为相应时间格式的功能:
char * ctime(const time_t *timer);将日历时间转换为本地时间并返回转换后的字符串指针 您可以定义字符串或字符指针以接收返回值。
struct tm * gmtime(const time_t *timer);将日历时间转换为 UTC(即格林威治标准时间)并返回结构指针以定义 structTM* 变量以接收结果。
struct tm * localtime(const time_t * timer);将日历时间转换为本地时间,返回结构指针 structtm * 变量以接收结果。
3. 示例:包括
void main()
时间结构体 TM 说明:
struct tm ;
-
不太确定保存到数组是什么意思。
#include
time t;
这是系统时间,您可以随心所欲地使用它。
-
有两个常用的时间相关 Win32 API:getsystemtime();使用 setsystemtime();下面是该函数的原型:
void getsystemtime(lpsystemtime lpsystemtime);
bool setsystemtime( const systemtime *lpsystemtime );
让我们查找 MSDN,看看 LPSsystemTime 和 SystemTime 是什么:
typedef struct _systemtime systemtime, *psystemtime;
void main()
-
#include
#include
void main ()
include -- 所需的时间函数头文件。
时间 t -- 时间类型(定义)。
struct tm { 时态结构,定义如下:
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
time ( rawtime );采集时间(以秒为单位)从 1970 年 1 月 1 日开始计算,并以原始时间存储
localtime ( rawtime );转换为本地时间,TM 时间结构。
asctime() 转换为标准 ASCII 时间格式:
日、月、日、时:分:秒、年。
您想要的格式可以像这样输出:
printf ( "%4d-%02d-%02d %02d:%02d:%02d",1900+timeinfo->tm_year, 1+timeinfo->tm_mon,timeinfo->tm_mday,timeinfo->tm_hour,timeinfo->tm_min,timeinfo->tm_sec);
就是直接打印tm,tm年是从1900年开始计算的,所以要加上1900,而monthtm mon,从0开始计算,所以要加1
您可以一目了然地看到其余部分。
-
您可以使用时间(在此处添加 time t 类型的指针)。
我今年上四年级了,刚拿到一个Unix操作系统内核,刚上幼儿园的时候学的C语言,现在都忘了那本书叫什么名字了,可能作者是扭曲了,不知道这本书是否还在销售,对不起。