#include 「time.h」

    技术2024-12-24  14

    下面自我测试

    | 返回程序启动到现在的运行时间是函数 | 将unix时间转化为字符时间 | 将格林时间转化为字符时间 | 将unix时间转化为格林时间 | 获取unix时间 #include <stdio.h> #include <stdlib.h> #include <time.h> /* 注意: { 1: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 int tm_year; 自 1900 起的年数 int tm_wday; 一周中的第几天,范围从 0 到 6 int tm_yday; 一年中的第几天,范围从 0 到 365 int tm_isdst; 夏令时 }; } 1;asctime() { 作用:将tm结构体各部分的日历时间,转化为时间字符串! 用于采集到的时间数据赋值给tm结构体,并转化为字符串格式! 注意:tm的必要的成员是必须要赋值的,否则tm结构体的数据不完整,不能正常asctime()转化为字符串! 返回值:字符串指针! } 2:clock() { 作用: 当程序启动时,clock()返回值=0ms 随着程序进行,clock()能返回程序启动到现在的运行时间! } 3:ctime() { 1:与asctime()不同,ctime()将time()获取到的时间转化为字符串,而asctime()是将硬件采集到的tm结构体转化为时间字符串 2:返回的时间字符串放在time_t这个64bite长度的空间 } 4:difftime(end,start) { 返回值:end与start的时间差,类型 = int end与start由time()获取 } 5:gmtime() { 作用:将time()获取的系统时间,拆分为tm结构! 注意:拆分后的时间是标准时间,不是时区的时间,如果需要打印当地时间,就需要加上时差! } 6:localtime() { 作用:将time()获取的系统时间,拆分为tm结构! 注意:拆分后的时间是当地时间,就不需要加上时差! } 7:mktime() { 作用:当tm结构体的一部分的值变化后,利用mktime()就可以将tm结构体所有部分相应的自动修改! 就不用一个个的手动修改了! } 8:time() { 返回值:返回距离1970-1-1 00:00:00 已经过去多少秒! } */ void Time_Text1() { struct tm t; t.tm_sec = 30; t.tm_min = 30; t.tm_hour = 12; t.tm_mday = 15; t.tm_mon = 6; t.tm_year = 10; t.tm_wday = 1; printf("时间:%s", asctime(&t)); } void Time_Text2() { clock_t Begin, End; Begin = clock(); printf("\n程序运行到main函数用时:%ldms\n", Begin); for (size_t i = 0; i < SIZE_MAX; i++) { } End = clock(); printf("\nmain函数用时:%ldms\n",End-Begin); } void Time_Text3() { time_t Curtime; time(&Curtime); printf("当前时间:%s", ctime(&Curtime)); } void Time_Text4() { time_t Begin,End; time(&Begin); for (size_t i = 0; i < SIZE_MAX; i++) { } time(&End); printf("主函数用时:%d s",(int)difftime(End, Begin)); } void Time_Text5() { time_t Curtime; struct tm *My_tm; time(&Curtime); My_tm = gmtime(&Curtime); printf("当前时间->%d:%d", My_tm->tm_hour + 8, My_tm->tm_min); } void Time_Text6() { time_t Curtime; struct tm* My_tm; time(&Curtime); My_tm = localtime(&Curtime); printf("当前时间->%d:%d", My_tm->tm_hour, My_tm->tm_min); } void Time_Text7() { time_t Curtime; struct tm* My_tm; time(&Curtime); My_tm = localtime(&Curtime); int Year; int Month; int Day; printf("\n输入年:\n"); scanf_s("%d", &Year); printf("\n输入月:\n"); scanf_s("%d", &Month); printf("\n输入日:\n"); scanf_s("%d", &Day); My_tm->tm_year = Year - 1900; My_tm->tm_mon = Month - 1; My_tm->tm_mday = Day; mktime(My_tm); printf("今天是周%d!", My_tm->tm_wday); } void Time_Text9() { time_t Time; Time = time(NULL); printf_s("距离1970-1-1 00:00:00 已经过去%d秒!", Time); } void TUME_TEXT() { //asctime()使用方法! //Time_Text1(); //clock()使用方法! //Time_Text2(); //ctime()使用方法 //Time_Text3(); //difftime()使用方法 //Time_Text4(); //gmtime()使用方法 //Time_Text5(); //localtime()使用方法 //Time_Text6(); //mktime()使用方法 //Time_Text7(); //strftime()使用方法 //Time_Text8(); //time(NULL)使用方法 Time_Text9(); }
    Processed: 0.009, SQL: 9