📄 04.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0051)http://net.pku.edu.cn/~yhf/linux_c/function/04.html -->
<HTML><HEAD><TITLE>Untitled Document</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2800.1479" name=GENERATOR></HEAD>
<BODY>
<TABLE>
<TBODY>
<TR>
<TD vAlign=top width=80>
<DIV align=right><BR><FONT face=宋体 size=2><A
name=linuxc32></A></FONT></DIV></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2><BR></FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2><BR>asctime(将时间和日期以字符串格式表示)
</FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>相关函数 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体
size=2>time,ctime,gmtime,localtime<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>表头文件 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体
size=2>#include<time.h><BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>定义函数 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2>char * asctime(const struct tm *
timeptr);<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>函数说明 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体
size=2>asctime()将参数timeptr所指的tm结构中的信息转换成真实世界所使用的时间日期表示方法,然后将结果以字符串形态返回。此函数已经由时区转换成当地时间,字符串格式为:“Wed
Jun 30 21:49:08 1993\n”<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>返回值 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体
size=2>若再调用相关的时间日期函数,此字符串可能会被破坏。此函数与ctime不同处在于传入的参数是不同的结构。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>附加说明 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2>返回一字符串表示目前当地的时间日期。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>范例 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2>#include
<time.h><BR>main()<BR>{<BR>time_t timep;<BR>time
(&timep);<BR>printf(“%s”,asctime(gmtime(&timep)));<BR>}<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>执行 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2>Sat Oct 28 02:10:06
2000<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><BR><FONT face=宋体 size=2><A
name=linuxc33></A></FONT></DIV></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2><BR></FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2><BR>ctime(将时间和日期以字符串格式表示)
</FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>相关函数 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体
size=2>time,asctime,gmtime,localtime<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>表头文件 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体
size=2>#include<time.h><BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>定义函数 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2>char *ctime(const time_t
*timep);<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>函数说明 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体
size=2>ctime()将参数timep所指的time_t结构中的信息转换成真实世界所使用的时间日期表示方法,然后将结果以字符串形态返回。此函数已经由时区转换成当地时间,字符串格式为“Wed
Jun 30 21 :49 :08 1993\n”。若再调用相关的时间日期函数,此字符串可能会被破坏。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>返回值 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2>返回一字符串表示目前当地的时间日期。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>范例 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体
size=2>#include<time.h><BR>main()<BR>{<BR>time_t timep;<BR>time
(&timep);<BR>printf(“%s”,ctime(&timep));<BR>}<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>执行 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2>Sat Oct 28 10 : 12 : 05
2000<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><BR><FONT face=宋体 size=2><A
name=linuxc34></A></FONT></DIV></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2><BR></FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2><BR>gettimeofday(取得目前的时间)
</FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>相关函数 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体
size=2>time,ctime,ftime,settimeofday<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>表头文件 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2>#include
<sys/time.h><BR>#include <unistd.h><BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>定义函数 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2>int gettimeofday ( struct timeval * tv
, struct timezone * tz )<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>函数说明 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体
size=2>gettimeofday()会把目前的时间有tv所指的结构返回,当地时区的信息则放到tz所指的结构中。<BR>timeval结构定义为:<BR>struct
timeval{<BR>long tv_sec; /*秒*/<BR>long tv_usec; /*微秒*/<BR>};<BR>timezone
结构定义为:<BR>struct timezone{<BR>int tz_minuteswest; /*和Greenwich
时间差了多少分钟*/<BR>int tz_dsttime;
/*日光节约时间的状态*/<BR>};<BR>上述两个结构都定义在/usr/include/sys/time.h。tz_dsttime
所代表的状态如下<BR>DST_NONE /*不使用*/<BR>DST_USA /*美国*/<BR>DST_AUST
/*澳洲*/<BR>DST_WET /*西欧*/<BR>DST_MET /*中欧*/<BR>DST_EET /*东欧*/<BR>DST_CAN
/*加拿大*/<BR>DST_GB /*大不列颠*/<BR>DST_RUM /*罗马尼亚*/<BR>DST_TUR
/*土耳其*/<BR>DST_AUSTALT /*澳洲(1986年以后)*/<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>返回值 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体
size=2>成功则返回0,失败返回-1,错误代码存于errno。附加说明EFAULT指针tv和tz所指的内存空间超出存取权限。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>范例 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体
size=2>#include<sys/time.h><BR>#include<unistd.h><BR>main(){<BR>struct
timeval tv;<BR>struct timezone tz;<BR>gettimeofday (&tv ,
&tz);<BR>printf(“tv_sec; %d\n”, tv,.tv_sec) ;<BR>printf(“tv_usec;
%d\n”,tv.tv_usec);<BR>printf(“tz_minuteswest; %d\n”,
tz.tz_minuteswest);<BR>printf(“tz_dsttime,
%d\n”,tz.tz_dsttime);<BR>}<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>执行 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2>tv_sec:
974857339<BR>tv_usec:136996<BR>tz_minuteswest:-540<BR>tz_dsttime:0<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><BR><FONT face=宋体 size=2><A
name=linuxc35></A></FONT></DIV></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2><BR></FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2><BR>gmtime(取得目前时间和日期) </FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>相关函数 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体
size=2>time,asctime,ctime,localtime<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>表头文件 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体
size=2>#include<time.h><BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>定义函数 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2>struct tm*gmtime(const
time_t*timep);<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>函数说明 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2>gmtime()将参数timep 所指的time_t
结构中的信息转换成真实世界所使用的时间日期表示方法,然后将结果由结构tm返回。<BR>结构tm的定义为<BR>struct
tm<BR>{<BR>int tm_sec;<BR>int tm_min;<BR>int tm_hour;<BR>int
tm_mday;<BR>int tm_mon;<BR>int tm_year;<BR>int tm_wday;<BR>int
tm_yday;<BR>int tm_isdst;<BR>};<BR>int tm_sec
代表目前秒数,正常范围为0-59,但允许至61秒<BR>int tm_min 代表目前分数,范围0-59<BR>int tm_hour
从午夜算起的时数,范围为0-23<BR>int tm_mday 目前月份的日数,范围01-31<BR>int tm_mon
代表目前月份,从一月算起,范围从0-11<BR>int tm_year 从1900 年算起至今的年数<BR>int tm_wday
一星期的日数,从星期一算起,范围为0-6<BR>int tm_yday 从今年1月1日算起至今的天数,范围为0-365<BR>int
tm_isdst 日光节约时间的旗标<BR>此函数返回的时间日期未经时区转换,而是UTC时间。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋体 size=2>返回值 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋体 size=2>返回结构tm代表目前UTC 时间<BR></FONT></TD></TR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -