ÖйúÇà»ù»á
RSS
ÈÈÃŹؼü×Ö£º ¡¡None ¡¡linux+moodle°²×° ¡¡mac ¡¡rhel5 ¡¡199
µ±Ç°Î»Öà : Nixsky>³ÌÐòÉè¼Æ>c/c++>Áбí

C/C++ÖеÄÈÕÆÚºÍʱ¼ä

À´Ô´£º ×÷Õߣº ʱ¼ä£º2007-03-24 µã»÷£º

4£®ÓëÈÕÆÚºÍʱ¼äÏà¹ØµÄº¯Êý¼°Ó¦ÓÃ
ÔÚ±¾½Ú£¬ÎÒ½«Ïò´ó¼ÒչʾÔõÑùÀûÓÃtime.hÖÐÉùÃ÷µÄº¯Êý¶Ôʱ¼ä½øÐвÙ×÷¡£ÕâЩ²Ù×÷°üÀ¨È¡µ±Ç°Ê±¼ä¡¢¼ÆËãʱ¼ä¼ä¸ô¡¢ÒÔ²»Í¬µÄÐÎʽÏÔʾʱ¼äµÈÄÚÈÝ¡£

4.1 »ñµÃÈÕÀúʱ¼ä

ÎÒÃÇ¿ÉÒÔͨ¹ýtime()º¯ÊýÀ´»ñµÃÈÕÀúʱ¼ä£¨Calendar Time£©£¬ÆäÔ­ÐÍΪ£º

time_t time(time_t * timer);

Èç¹ûÄãÒѾ­ÉùÃ÷Á˲ÎÊýtimer£¬Äã¿ÉÒÔ´Ó²ÎÊýtimer·µ»ØÏÖÔÚµÄÈÕÀúʱ¼ä£¬Í¬Ê±Ò²¿ÉÒÔͨ¹ý·µ»ØÖµ·µ»ØÏÖÔÚµÄÈÕÀúʱ¼ä£¬¼´´ÓÒ»¸öʱ¼äµã£¨ÀýÈ磺1970 Äê1ÔÂ1ÈÕ0ʱ0·Ö0Ã룩µ½ÏÖÔÚ´ËʱµÄÃëÊý¡£Èç¹û²ÎÊýΪ¿Õ£¨NUL£©£¬º¯Êý½«Ö»Í¨¹ý·µ»ØÖµ·µ»ØÏÖÔÚµÄÈÕÀúʱ¼ä£¬±ÈÈçÏÂÃæÕâ¸öÀý×ÓÓÃÀ´ÏÔʾµ±Ç°µÄÈÕÀúʱ¼ä£º

#include "time.h"
#include "stdio.h"
int main(void)
{
struct tm *ptr;
time_t lt;
lt =time(NUL);
printf("The Calendar Time now is %d\n",lt);
return 0;
}

ÔËÐеĽá¹ûÓ뵱ʱµÄʱ¼äÓйأ¬ÎÒµ±Ê±ÔËÐеĽá¹ûÊÇ£º

The Calendar Time now is 1122707619

ÆäÖÐ1122707619¾ÍÊÇÎÒÔËÐгÌÐòʱµÄÈÕÀúʱ¼ä¡£¼´´Ó1970Äê1ÔÂ1ÈÕ0ʱ0·Ö0Ãëµ½´ËʱµÄÃëÊý¡£

4.2 »ñµÃÈÕÆÚºÍʱ¼ä

ÕâÀï˵µÄÈÕÆÚºÍʱ¼ä¾ÍÊÇÎÒÃÇÆ½Ê±Ëù˵µÄÄê¡¢Ô¡¢ÈÕ¡¢Ê±¡¢·Ö¡¢ÃëµÈÐÅÏ¢¡£´ÓµÚ2½ÚÎÒÃÇÒѾ­ÖªµÀÕâЩÐÅÏ¢¶¼±£´æÔÚÒ»¸öÃûΪtmµÄ½á¹¹ÌåÖУ¬ÄÇôÈçºÎ½«Ò»¸öÈÕÀúʱ¼ä±£´æÎªÒ»¸ötm½á¹¹µÄ¶ÔÏóÄØ£¿

ÆäÖпÉÒÔʹÓõĺ¯ÊýÊÇgmtime()ºÍlocaltime()£¬ÕâÁ½¸öº¯ÊýµÄÔ­ÐÍΪ£º

struct tm * gmtime(const time_t *timer);
struct tm * localtime(const time_t * timer);

ÆäÖÐgmtime()º¯ÊýÊǽ«ÈÕÀúʱ¼äת»¯ÎªÊÀ½ç±ê׼ʱ¼ä£¨¼´¸ñÁÖÄáÖÎʱ¼ä£©£¬²¢·µ»ØÒ»¸ötm½á¹¹ÌåÀ´±£´æÕâ¸öʱ¼ä£¬¶ølocaltime()º¯ÊýÊǽ«ÈÕÀúʱ¼äת»¯Îª±¾µØÊ±¼ä¡£±ÈÈçÏÖÔÚÓÃgmtime()º¯Êý»ñµÃµÄÊÀ½ç±ê׼ʱ¼äÊÇ2005Äê7ÔÂ30ÈÕ7µã18·Ö20Ã룬ÄÇôÎÒÓÃlocaltime()º¯ÊýÔÚÖйúµØÇø»ñµÃµÄ±¾µØÊ±¼ä»á±ÈÊÀ½ç±ê׼ʱ¼äÍí8¸öСʱ£¬¼´2005Äê7ÔÂ30ÈÕ15µã18·Ö20Ãë¡£ÏÂÃæÊǸöÀý×Ó£º

#include "time.h"
#include "stdio.h"
int main(void)
{
struct tm *local;
time_t t;
t=time(NUL);
local=localtime(&t);
printf("Local hour is: %d\n",local->tm_hour);
local=gmtime(&t);
printf("UTC hour is: %d\n",local->tm_hour);
return 0;
}

ÔËÐнá¹ûÊÇ£º

Local hour is: 15
UTC hour is: 7

4.3 ¹Ì¶¨µÄʱ¼ä¸ñʽ

ÎÒÃÇ¿ÉÒÔͨ¹ýasctime()º¯ÊýºÍctime()º¯Êý½«Ê±¼äÒԹ̶¨µÄ¸ñʽÏÔʾ³öÀ´£¬Á½Õߵķµ»ØÖµ¶¼ÊÇchar*Ð͵Ä×Ö·û´®¡£·µ»ØµÄʱ¼ä¸ñʽΪ£º

ÐÇÆÚ¼¸ ÔÂ·Ý ÈÕÆÚ Ê±:·Ö:Ãë Äê\n\0
ÀýÈ磺Wed Jan 02 02:03:55 1980\n\0

ÆäÖÐ\nÊÇÒ»¸ö»»Ðзû£¬\0ÊÇÒ»¸ö¿Õ×Ö·û£¬±íʾ×Ö·û´®½áÊø¡£ÏÂÃæÊÇÁ½¸öº¯ÊýµÄÔ­ÐÍ£º

char * asctime(const struct tm * timeptr);
char * ctime(const time_t *timer);

ÆäÖÐasctime()º¯ÊýÊÇͨ¹ýtm½á¹¹À´Éú³É¾ßÓй̶¨¸ñʽµÄ±£´æÊ±¼äÐÅÏ¢µÄ×Ö·û´®£¬¶øctime()ÊÇͨ¹ýÈÕÀúʱ¼äÀ´Éú³Éʱ¼ä×Ö·û´®¡£ÕâÑùµÄ»°£¬ asctime£¨£©º¯ÊýÖ»ÊǰÑtm½á¹¹¶ÔÏóÖеĸ÷¸öÓòÌʱ¼ä×Ö·û´®µÄÏàӦλÖþÍÐÐÁË£¬¶øctime£¨£©º¯ÊýÐèÒªÏȲÎÕÕ±¾µØµÄʱ¼äÉèÖ㬰ÑÈÕÀúʱ¼äת»¯Îª±¾µØÊ±¼ä£¬È»ºóÔÙÉú³É¸ñʽ»¯ºóµÄ×Ö·û´®¡£ÔÚÏÂÃæ£¬Èç¹ûtÊÇÒ»¸ö·Ç¿ÕµÄtime_t±äÁ¿µÄ»°£¬ÄÇô£º

printf(ctime(&t));

µÈ¼ÛÓÚ£º

struct tm *ptr;
ptr=localtime(&t);
printf(asctime(ptr));

ÄÇô£¬ÏÂÃæÕâ¸ö³ÌÐòµÄÁ½ÌõprintfÓï¾äÊä³öµÄ½á¹û¾ÍÊDz»Í¬µÄÁË£¨³ý·ÇÄ㽫±¾µØÊ±ÇøÉèΪÊÀ½ç±ê׼ʱ¼äËùÔÚµÄÊ±Çø£©£º

#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

4.4 ×Ô¶¨Òåʱ¼ä¸ñʽ

ÎÒÃÇ¿ÉÒÔʹÓÃstrftime£¨£©º¯Êý½«Ê±¼ä¸ñʽ»¯ÎªÎÒÃÇÏëÒªµÄ¸ñʽ¡£ËüµÄÔ­ÐÍÈçÏ£º

size_t strftime(
char *strDest,
size_t maxsize,
const char *format,
const struct tm *timeptr
);

ÎÒÃÇ¿ÉÒÔ¸ù¾ÝformatÖ¸Ïò×Ö·û´®ÖиñʽÃüÁî°ÑtimeptrÖб£´æµÄʱ¼äÐÅÏ¢·ÅÔÚstrDestÖ¸ÏòµÄ×Ö·û´®ÖУ¬×î¶àÏòstrDestÖдæ·Åmaxsize¸ö×Ö·û¡£¸Ãº¯Êý·µ»ØÏòstrDestÖ¸ÏòµÄ×Ö·û´®ÖзÅÖõÄ×Ö·ûÊý¡£

×îÐÂÆÀÂÛ¹²ÓÐ 0 Î»ÍøÓÑ·¢±íÁËÆÀÂÛ
·¢±íÆÀÂÛ
ÆÀÂÛÄÚÈÝ£º²»Äܳ¬¹ý250×Ö£¬ÐèÉóºË£¬Çë×Ô¾õ×ñÊØ»¥ÁªÍøÏà¹ØÕþ²ß·¨¹æ¡£
Óû§Ãû£º ÃÜÂ룺
ÄäÃû?
×¢²á