×

localtime怎么读

localtime怎么读(能读出当前时间吗)

admin admin 发表于2023-10-20 02:39:15 浏览39 评论0

抢沙发发表评论

本文目录

能读出当前时间吗

读取当前时间的代码参考如下:《body》《span id=localtime》《/span》《script type=“text/javascript“》function showLocale(objD){ var str; var hh = objD.getHours(); if(hh《10) hh = ’0’ + hh; var mm = objD.getMinutes(); if(mm《10) mm = ’0’ + mm; str = hh + “:“ + mm; return(str);}function tick(){ var today; today = new Date(); document.getElementById(“localtime“).innerHTML = showLocale(today); window.setTimeout(“tick()“, 1000);}tick();《/script》《/body》

C语言时间,怎么把time_t类型的时间,转化成年、月、日、时、分、秒呢

可以使用gmtime函数或localtime函数将time_t类型的时间日期转换为struct tm类型(年、月、日、时、分、秒)。使用time函数返回的是一个long值,该值对用户的意义不大,一般不能根据其值确定具体的年、月、日等数据。gmtime函数可以方便的对time_t类型数据进行转换,将其转换为tm结构的数据方便数据阅读。gmtime函数的原型如下:struct tm *gmtime(time_t *timep);localtime函数的原型如下:struct tm *localtime(time_t *timep);将参数timep所指的time_t类型信息转换成实际所使用的时间日期表示方法,将结果返回到结构tm结构类型的变量。gmtime函数用来存放实际日期时间的结构变量是静态分配的,每次调用gmtime函数都将重写该结构变量。如果希望保存结构变量中的内容,必须将其复制到tm结构的另一个变量中。gmtime函数与localtime函数的区别:gmtime函数返回的时间日期未经时区转换,是UTC时间(又称为世界时间,即格林尼治时间)。localtime函数返回当前时区的时间。转换日期时间表示形式time_t类型转换为struct tm类型示例:#include 《stdio.h》#include 《time.h》int main(){ char *wday={“Sun“,“Mon“,“Tue“,“Wed“,“Thu“,“Fri“,“Sat“};/*指针字符数组*/ time_t t; struct tm *p; t=time(NULL);/*获取从1970年1月1日零时到现在的秒数,保存到变量t中*/ p=gmtime(&t); /*变量t的值转换为实际日期时间的表示格式*/ printf(“%d年%02d月%02d日“,(1900+p-》tm_year), (1+p-》tm_mon),p-》tm_mday); printf(“ %s “, wday);printf(“%02d:%02d:%02d\n“, p-》tm_hour, p-》tm_min, p-》tm_sec); return 0;}注意:p=gmtime(&t);此行若改为p=localtime(&t);则返回当前时区的时间。

linux怎么读区间函数

系统环境:ubuntu10.04简介本文旨在为了解Linux各种时间类型与时间函数提供技术文档。1、Linux下常用时间类型Linux下常用时间类型有四种:time_t、struct tm、struct timeval、struct timespec1.1 time_t时间类型time_t类型在time.h中定义:

 view plain copy

  • #ifndef __TIME_T  

  • #define __TIME_T  

  • typedef  long  time_t;  

  • #endif  

  • 可见,time_t实际是一个长整型。其值表示为从UTC(coordinated universal time)时间1970年1月1日00时00分00秒(也称为Linux系统的Epoch时间)到当前时刻的秒数。由于time_t类型长度的限制,它所表示的时间不能晚于2038年1月19日03时14分07秒(UTC)。为了能够表示更久远的时间,可用64位或更长的整形数来保存日历时间,这里不作详述。使用time()函数获取当前时间的time_t值,使用ctime()函数将time_t转为当地时间字符串。备注:UTC时间有时也称为GMT时间,其实UTC和GMT两者几乎是同一概念。它们都是指格林尼治标准时间,只不过UTC的称呼更为正式一点。两者区别在于前者是天文上的概念,而后者是基于一个原子钟。1.2 struct tm时间类型tm结构在time.h中定义:

     view plain copy

  • #ifndef _TM_DEFINED  

  • struct tm{  

  • int tm_sec; /*秒 - 取值区间为*/  

  • int tm_min; /*分 - 取值区间为*/  

  • int tm_hour; /*时 - 取值区间为*/  

  • int tm_mday; /*日 - 取值区间为*/  

  • int tm_mon; /*月份 - 取值区间为*/  

  • int tm_year; /*年份 - 其值为1900年至今年数*/  

  • int tm_wday; /*星期 - 取值区间,0代表星期天,1代表星期1,以此类推*/  

  • int tm_yday; /*从每年的1月1日开始的天数-取值区间为,0代表1月1日*/  

  • int tm_isdst; /*夏令时标识符,使用夏令时,tm_isdst为正,不使用夏令时,tm_isdst为0,不了解情况时,tm_isdst为负*/  

  • };  

  • #define _TM_DEFINED  

  • #endif  

  • ANSI C标准称使用tm结构的这种时间表示为分解时间(broken-down time)。使用gmtime( )和localtime( )可将time_t时间类型转换为tm结构体;使用mktime( )将tm结构体转换为time_t时间类型;使用asctime( )将struct tm转换为字符串形式。1.3 struct timeval时间类型timeval结构体在time.h中定义:

     view plain copy

  • Struct tmieval{  

  • time_t tv_sec; /*秒s*/  

  • suseconds_t tv_usec; /*微秒us*/  

  • };  

  • 设置时间函数settimeofday( )与获取时间函数gettimeofday( )均使用该事件类型作为传参。1.4 struct timespec时间类型timespec结构体在time.h定义:

     view plain copy

  • struct timespec{  

  • time_t tv_sec; /*秒s*/  

  • long tv_nsec; /*纳秒ns*/  

  • };  

  • 2、Linux下常用时间函数Linux下常用时间函数有:time( )、ctime( )、gmtime( )、localtime( )、mktime( )、asctime( )、difftime( )、gettimeofday( )、settimeofday( )2.1 time( )函数头文件:#include 《time.h》函数定义:time_t time(time_t *timer)功能描述:该函数返回从1970年1月1日00时00分00秒至今所经过的秒数。如果time_t *timer非空指针,函数也会将返回值存到timer指针指向的内存。返回值:成功则返回秒数,失败则返回((time_t)-1)值,错误原因存于errno中。例:

     view plain copy

  • time_t seconds;  

  • seconds = time((time_t *)NULL);  

  • 2.2 ctime( )函数头文件:#include 《time.h》函数定义:char *ctime(const time_t *timep);功能描述:ctime( )将参数timep指向的time_t时间信息转换成实际所使用的时间日期表示方法,并以字符串形式返回。字符串格式为:“Wed Jun 20 21:00:00 2012\n“。例:

     view plain copy

  • time_t timep;  

  • tmep = time(NULL);  

  • printf(“%s\n“, ctime(&timep));  

  • 2.3 gmtime( )函数头文件:#include 《time.h》函数定义:struct tm *gmtime(const time_t *timep)功能描述:gmtime( )将参数timep指向的time_t时间信息转换成以tm结构体表示的GMT时间信息,并以struct tm*指针返回。GMT:GMT是中央时区,北京在东8区,相差8个小时,所以北京时间=GMT时间+8小时。例:

     view plain copy

  • int main(void)  

  • {  

  • char *wday = {“Sun“, “Mon“, “Tue“, “Wed“, “Thu“, “Fri“, “Sat“};  

  • time_t timep;  

  • struct tm *p_tm;  

  • timep = time(NULL);  

  • p_tm = gmtime(&timep); /*获取GMT时间*/  

  • printf(“%d-%d-%d “, (p_tm-》tm_year+1900), (p_tm-》mon+1), p_tm-》tm_mday);  

  • printf(“%s %d:%d:%d\n“, wday, p_tm-》tm_hour, p_tm-》tm_min, p_tm-》tm_sec);  

  • }  

  • 2.4 localtime( )函数头文件:#include 《time.h》函数定义:struct tm *localtime(const time_t *timep);功能描述:localtime( )将参数timep指向的time_t时间信息转换成以tm结构体表示的本地时区时间(如北京时间= GMT+小时)。例:

     view plain copy

  • int main(void)  

  • {  

  • char *wday = {“Sun“, “Mon“, “Tue“, “Wed“, “Thu“, “Fri“, “Sat“};  

  • time_t timep;  

  • struct tm *p_tm;  

  • timep = time(NULL);  

  • p_tm = localtime(&timep); /*获取本地时区时间*/  

  • printf(“%d-%d-%d “, (p_tm-》tm_year+1900), (p_tm-》mon+1), p_tm-》tm_mday);  

  • printf(“%s %d:%d:%d\n“, wday, p_tm-》tm_hour, p_tm-》tm_min, p_tm-》tm_sec);  

  • return 0;  

  • }  

  • 2.5 mktime( )函数头文件:#include 《time.h》函数定义:time_t mktime(struct tm *p_tm);功能描述:mktime( )将参数p_tm指向的tm结构体数据转换成从1970年1月1日00时00分00秒至今的GMT时间经过的秒数。例:

     view plain copy

  • int main(void)  

  • {  

  • time_t timep:  

  • struct tm *p_tm;  

  • timep = time(NULL);  

  • pintf(“time( ):%d\n“, timep);  

  • p_tm = local(&timep);  

  • timep = mktime(p_tm);  

  • printf(“time( )-》localtime( )-》mktime( ):%d\n“, timep);  

  • return 0;  

  • }  

  • 2.6 asctime( )函数头文件:#include 《time.h》函数定义:char *asctime(const struct tm *p_tm);功能描述:asctime( )将参数p_tm指向的tm结构体数据转换成实际使用的时间日期表示方法,并以字符串形式返回(与ctime函数相同)。字符串格式为:“Wed Jun 20 21:00:00 2012\n“。例:

     view plain copy

  • int main(void)  

  • {  

  • time_t timep;  

  • timep = time(NULL);  

  • printf(“%s\n“, asctime(gmtime(&timep)));  

  • return 0;  

  • }  

  • 2.7 difftime( )函数头文件:#include 《time.h》函数定义:double difftime(time_t timep1, time_t timep2);功能描述:difftime( )比较参数timep1和timep2时间是否相同,并返回之间相差秒数。例:

     view plain copy

  • int main(void)  

  • {  

  • time_t timep1, timep2;  

  • timep1 = time(NULL);  

  • sleep(2);  

  • timep2 = time(NULL);  

  • printf(“the difference is %f seconds\n“, difftime(timep1, timep2));  

  • return 0;  

  • }  

  • 2.8 gettimeofday( )函数头文件:#include 《sys/time.h》#include 《unistd.h》函数定义:int gettimeofday(struct timeval *tv, struct timezone *tz);功能描述:gettimeofday( )把目前的时间信息存入tv指向的结构体,当地时区信息则放到tz指向的结构体。struct timezone原型:

     view plain copy

  • struct timezone{  

  • int tz_minuteswest; /*miniutes west of Greenwich*/  

  • int tz_dsttime; /*type of DST correction*/  

  • };  

  • 例:

     view plain copy

  • struct timeval tv;  

  • struct timeval tz;  

  • gettimeofday(&tv, &tz);  

  • 附:使用time函数族获取时间并输出指定格式字符串例子(strftime( )函数):

     view plain copy

  • int main(void)  

  • {  

  • char strtime = {0};  

  • time_t timep;  

  • struct tm *p_tm;  

  • timep = time(NULL);  

  • p_tm = localtime(&timep);  

  • strftime(strtime, sizeof(strtime), “%Y-%m-%d %H:%M:%S“, p_tm);  

  • return 0;  

  • }  

  • 2.9 settimeofday( )函数头文件:#include 《sys/time.h》#include 《unistd.h》函数定义:int settimeofday(const struct timeval *tv, const struct timezone *gz);功能描述:settimeofday( )把当前时间设成由tv指向的结构体数据。当前地区信息则设成tz指向的结构体数据。例:

     view plain copy

  • int main(void)  

  • {  

  • char t_string = “2012-04-28 22:30:00“;  

  • struct tm time_tm;  

  • struct timeval time_tv;  

  • time_t timep;  

  • int ret = 0;  

  • sscanf(t_string, “%d-%d-%d %d:%d:%d“, &time_tm.tm_year, &time_tm.tm_mon, &time_tm.tm_mday, &time_tm.tm_hour, &time_tm.tm_min, &time_tm.tm_sec);  

  • time_tm.tm_year -= 1900;  

  • time_tm.tm_mon -= 1;  

  • time_tm.tm_wday = 0;  

  • time_tm.tm_yday = 0;  

  • time_tm.tm_isdst = 0;  

  • timep = mktime(&time_tm);  

  • time_tv.tv_sec = timep;  

  • time_tv.tv_usec = 0;  

  • ret = settimeofday(&time_tv, NULL);  

  • if(ret != 0)  

  • {  

  • fprintf(stderr, “settimeofday failed\n“);  

  • return -1;  

  • }  

  • return 0;  

  • }  

C语言有没有读取系统时间的函数

time.h头文件中倒是有以下是百度来的,详细可查看在下面,如果t是一个非空的time_t变量的话,那么: printf(ctime(&t)); 等价于: struct tm *ptr; ptr=localtime(&t); printf(asctime(ptr)); 那么,下面这个程序的两条printf语句输出的结果就是不同的了(除非你将本地时区设为世界标准时间所在的时区): #include “time.h“ #include “stdio.h“ int main(void) { struct tm *ptr; time_t lt; lt =time(NUL); ptr=gmtime(《); printf(asctime(ptr)); printf(ctime(《)); return 0; } 运行结果: Sat Jul 30 08:43:03 2005 Sat Jul 30 16:43:03 2005

tm tim=*localtime(&curtime);这个C++语句怎么解释最好详细点

其实应该是这样的吧time_t curtime;curtime = time(NULL);tm 其实是一个结构体,里面有时间的信息,年月日时分秒,相关信息可以自行查看由于time_t 类型的数据其实是一个 unsigned的数字,不能区分出时分秒年月日localtime 这个函数就是将time_t 的数据转换成 tm 这样的结构体这样做是为了更好的读取当前时间的年月日时分秒。struct tm{int tm_sec; /* Seconds. (1 leap second) */int tm_min; /* Minutes. */int tm_hour; /* Hours. */int tm_mday; /* Day. */int tm_mon; /* Month. */int tm_year; /* Year - 1900. */int tm_wday; /* Day of week. */int tm_yday; /* Days in year. */int tm_isdst; /* DST. */#ifdef __USE_BSDlong int tm_gmtoff; /* Seconds east of UTC. */__const char *tm_zone; /* Timezone abbreviation. */#elselong int __tm_gmtoff; /* Seconds east of UTC. */__const char *__tm_zone; /* Timezone abbreviation. */#endif};

C++读取系统时间问题

#include 《iostream》#include 《ctime》using namespace std;int main(int argc, char* argv){ tm *year; tm *month; tm *day; time_t t; t = time(0); year = localtime(&t); month = localtime(&t); day = localtime(&t); cout《《(year-》tm_year+1900)《《endl//返回的是今年减1900,所以要加上1900 《《(month-》tm_mon+1)《《endl//因为Month (0 – 11; January = 0),所以要加1 《《day-》tm_mday《《endl; return 0;}

怎么用C语言定义时间

楼主,我这段代码是读取时间的,不知道是不是你想要的:#include 《stdio.h》#include 《time.h》int main(void){time_t now = time(NULL);tm *t = localtime(&now);printf(“%d-%d-%d %d:%d:%d\n“, t-》tm_year+1900, t-》tm_mon, t-》tm_mday, t-》tm_hour, t-》tm_min, t-》tm_sec);getchar();return 0;}

Linux 中的 /etc/localtime 和 /etc/timezone 的区别是什么

可以用 zdump 命令来读取 /etc/localtime 文件的内容:zdump -v /etc/localtime/etc/localtime Mon Aug 15 11:22:52 2016 CST/etc/timezone 的内容是时区,比如 Asia/ShangHai。

linux的/etc/sysconfig/clock和/etc/localtime有什么区别

1)/etc/sysconfig/clock文件,只对hwclock命令有效,且只在系统启动和关闭的时候才有用(修改了其中的UTC=true到UTC=false的前后,执行hwclock(--utc,或--localtime)都没有变化,要重启系统后才生效);在/etc/sysconfig/clock中UTC=false时,date、hwclock、hwclcok--localtime输出的时间应该都一致,且此时hwclock--utc是没有意义的;在/etc/sysconfig/clock中UTC=ture时,date、hwclock的输出是一致的,hwclock--localtime的输出则是UTC时间;系统关闭时会同步系统时间到硬件时钟,系统启动时会从硬件时钟读取时间更新到系统,这2个步骤都要根据/etc/sysconfig/clock文件中UTC的参数来设置时区转换。2)./etc/localtime这个文件用来设置系统的时区,将/usr/share/zoneinfo/中相应文件拷贝到/etc下并重命名为localtime即可修改时区设置,而且这种修改对date命令是及时生效的。不论是date还是hwclock都会用到这个文件,会根据这个文件的时区设置来进行UTC和本地之间之间的换算。