请输入您要查询的百科知识:

 

词条 "time.h"
释义

time_t和clock_t和size_t都是与long有同等意义得名字。本类别给出时间和日期处理函数 。 头文件为 time.h 。

日期和时间函数

time_t和clock_t和size_t都是与long有同等意义的名字。

本类别给出时间和日期处理函数

头文件 time.h

函数列表

函数类别 函数用途 详细说明

long clock(void); 返回程序开始执行后占用的处理器时间。

得到时间差

delay(int n);表明延时n毫秒;

sleep(int n);延时n秒后刷新;

double difftime(long t2,long t1) ;返回t2-t1得值。

long mktime (struct tm*);将结构体中的当地时间转换为日历时间。

得到时间

long time (long *tp);返回当前日历时间,同时将返回值赋给*tp;

时间转换函数 得到以ASCII码表示的时间 char *asctime (const struct tm *tp);

得到字符串表示的时间 char *ctime(const time_t *tp);

得到指定格式的时间 size_t strftime(char *s,size_t smax,const char *fmt,const struct tm *tp);

time.h的原文件为

/*

* time.h

* This file has no copyright assigned and is placed in the Public Domain.

* This file is a part of the mingw-runtime package.

* No warranty is given; refer to the file DISCLAIMER within the package.

*

* Date and time functions and types.

*

*/

#ifndef _TIME_H_

#define _TIME_H_

/* All the headers include this file. */

#include <_mingw.h>

#define __need_wchar_t

#define __need_size_t

#define __need_NULL

#ifndef RC_INVOKED

#include <stddef.h>

#endif /* Not RC_INVOKED */

/*

* Number of clock ticks per second. A clock tick is the unit by which

* processor time is measured and is returned by 'clock'.

*/

#define CLOCKS_PER_SEC ((clock_t)1000)

#define CLK_TCK CLOCKS_PER_SEC

#ifndef RC_INVOKED

/*

* A type for storing the current time and date. This is the number of

* seconds since midnight Jan 1, 1970.

* NOTE: This is also defined in non-ISO sys/types.h.

*/

#ifndef _TIME_T_DEFINED

typedef long time_t;

#define _TIME_T_DEFINED

#endif

#ifndef __STRICT_ANSI__

/* A 64-bit time_t to get to Y3K */

#ifndef _TIME64_T_DEFINED

typedef __int64 __time64_t;

#define _TIME64_T_DEFINED

#endif

#endif

/*

* A type for measuring processor time (in clock ticks).

*/

#ifndef _CLOCK_T_DEFINED

typedef long clock_t;

#define _CLOCK_T_DEFINED

#endif

#ifndef _TM_DEFINED

/*

* A structure for storing all kinds of useful information about the

* current (or another) time.

*/

struct tm

{

int tm_sec; /* Seconds: 0-59 (K&R says 0-61?) */

int tm_min; /* Minutes: 0-59 */

int tm_hour; /* Hours since midnight: 0-23 */

int tm_mday; /* Day of the month: 1-31 */

int tm_mon; /* Months *since* january: 0-11 */

int tm_year; /* Years since 1900 */

int tm_wday; /* Days since Sunday (0-6) */

int tm_yday; /* Days since Jan. 1: 0-365 */

int tm_isdst; /* +1 Daylight Savings Time, 0 No DST,

* -1 don't know */

};

#define _TM_DEFINED

#endif

#ifdef __cplusplus

extern "C" {

#endif

_CRTIMP clock_t __cdecl clock (void);

_CRTIMP time_t __cdecl time (time_t*);

_CRTIMP double __cdecl difftime (time_t, time_t);

_CRTIMP time_t __cdecl mktime (struct tm*);

/*

* These functions write to and return pointers to static buffers that may

* be overwritten by other function calls. Yikes!

*

* NOTE: localtime, and perhaps the others of the four functions grouped

* below may return NULL if their argument is not 'acceptable'. Also note

* that calling asctime with a NULL pointer will produce an Invalid Page

* Fault and crap out your program. Guess how I know. Hint: stat called on

* a directory gives 'invalid' times in st_atime etc...

*/

_CRTIMP char* __cdecl asctime (const struct tm*);

_CRTIMP char* __cdecl ctime (const time_t*);

_CRTIMP struct tm* __cdecl gmtime (const time_t*);

_CRTIMP struct tm* __cdecl localtime (const time_t*);

_CRTIMP size_t __cdecl strftime (char*, size_t, const char*, const struct tm*);

#ifndef __STRICT_ANSI__

extern _CRTIMP void __cdecl _tzset (void);

#ifndef _NO_OLDNAMES

extern _CRTIMP void __cdecl tzset (void);

#endif

_CRTIMP char* __cdecl _strdate(char*);

_CRTIMP char* __cdecl _strtime(char*);

/* These require newer versions of msvcrt.dll (6.10 or higher). */

#if __MSVCRT_VERSION__ >= 0x0601

_CRTIMP __time64_t __cdecl _time64( __time64_t);

_CRTIMP __time64_t __cdecl _mktime64 (struct tm*);

_CRTIMP char* __cdecl _ctime64 (const __time64_t*);

_CRTIMP struct tm* __cdecl _gmtime64 (const __time64_t*);

_CRTIMP struct tm* __cdecl _localtime64 (const __time64_t*);

#endif /* __MSVCRT_VERSION__ >= 0x0601 */

/*

* _daylight: non zero if daylight savings time is used.

* _timezone: difference in seconds between GMT and local time.

* _tzname: standard/daylight savings time zone names (an array with two

* elements).

*/

#ifdef __MSVCRT__

/* These are for compatibility with pre-VC 5.0 suppied MSVCRT. */

extern _CRTIMP int* __cdecl __p__daylight (void);

extern _CRTIMP long* __cdecl __p__timezone (void);

extern _CRTIMP char** __cdecl __p__tzname (void);

__MINGW_IMPORT int _daylight;

__MINGW_IMPORT long _timezone;

__MINGW_IMPORT char *_tzname[2];

#else /* not __MSVCRT (ie. crtdll) */

#ifndef __DECLSPEC_SUPPORTED

extern int* _imp___daylight_dll;

extern long* _imp___timezone_dll;

extern char** _imp___tzname;

#define _daylight (*_imp___daylight_dll)

#define _timezone (*_imp___timezone_dll)

#define _tzname (*_imp___tzname)

#else /* __DECLSPEC_SUPPORTED */

__MINGW_IMPORT int _daylight_dll;

__MINGW_IMPORT long _timezone_dll;

__MINGW_IMPORT char* _tzname[2];

#define _daylight _daylight_dll

#define _timezone _timezone_dll

#endif /* __DECLSPEC_SUPPORTED */

#endif /* not __MSVCRT__ */

#ifndef _NO_OLDNAMES

#ifdef __MSVCRT__

/* These go in the oldnames import library for MSVCRT. */

__MINGW_IMPORT int daylight;

__MINGW_IMPORT long timezone;

__MINGW_IMPORT char *tzname[2];

#else /* not __MSVCRT__ */

/* CRTDLL is royally messed up when it comes to these macros.

TODO: import and alias these via oldnames import library instead

of macros. */

#define daylight _daylight

/* NOTE: timezone not defined because it would conflict with sys/timeb.h.

Also, tzname used to a be macro, but now it's in moldname. */

__MINGW_IMPORT char *tzname[2];

#endif /* not __MSVCRT__ */

#endif /* Not _NO_OLDNAMES */

#endif /* Not __STRICT_ANSI__ */

#ifndef _WTIME_DEFINED

/* wide function prototypes, also declared in wchar.h */

#ifndef __STRICT_ANSI__

#ifdef __MSVCRT__

_CRTIMP wchar_t* __cdecl _wasctime(const struct tm*);

_CRTIMP wchar_t* __cdecl _wctime(const time_t*);

_CRTIMP wchar_t* __cdecl _wstrdate(wchar_t*);

_CRTIMP wchar_t* __cdecl _wstrtime(wchar_t*);

#if __MSVCRT_VERSION__ >= 0x0601

_CRTIMP wchar_t* __cdecl _wctime64 (const __time64_t*);

#endif

#endif /* __MSVCRT__ */

#endif /* __STRICT_ANSI__ */

_CRTIMP size_t __cdecl wcsftime (wchar_t*, size_t, const wchar_t*, const struct tm*);

#define _WTIME_DEFINED

#endif /* _WTIME_DEFINED */

#ifdef __cplusplus

}

#endif

#endif /* Not RC_INVOKED */

#endif /* Not _TIME_H_ */

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2025/2/27 7:41:39