C语言Time函数

1、 time() 获取当前时间

time_t timer;

time(&timer);

相当于 timer = time(NULL); 或 timer = time(0);

可用于随机数的生成。

srand( (unsigned)time(0));


2、localtime() 把一个时间戳转换 年月日表示格式

3、ctime() 把一个 时间戳转换为 年月日表示的字符串

char* ctime (const time_t * timer);


	struct tm * date;
	time_t now;
	time(&now);
	date = localtime(&now);

	//ctime() 演示
	char * datestr;
	datestr = ctime(&now);

	//mktime 演示
	time_t resTm = mktime(date);

	//strftime


	cout << now << endl;
	cout << date->tm_year << " " << date->tm_mon << " " << date->tm_mday << endl;
	cout << datestr << endl;
	cout << resTm << endl;




4 differtime 返回相隔的时(以秒为单位)

double difftime (time_t end, time_t beginning);

5 strftime()

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

把 timeptr 所指向的 时间格式化显示, 放在 pstr中。

specifier Replaced by Example
%a Abbreviated weekday name * Thu
%A Full weekday name * Thursday
%b Abbreviated month name * Aug
%B Full month name * August
%c Date and time representation * Thu Aug 23 14:55:02 2001
%C Year divided by 100 and truncated to integer (00-99) 20
%d Day of the month, zero-padded (01-31) 23
%D ShortMM/DD/YYdate, equivalent to%m/%d/%y 08/23/01
%e Day of the month, space-padded (1-31) 23
%F ShortYYYY-MM-DDdate, equivalent to%Y-%m-%d 2001-08-23
%g Week-based year, last two digits (00-99) 01
%G Week-based year 2001
%h Abbreviated month name * (same as%b) Aug
%H Hour in 24h format (00-23) 14
%I Hour in 12h format (01-12) 02
%j Day of the year (001-366) 235
%m Month as a decimal number (01-12) 08
%M Minute (00-59) 55
%n New-line character ('\n')
%p AM or PM designation PM
%r 12-hour clock time * 02:55:02 pm
%R 24-hourHH:MMtime, equivalent to%H:%M 14:55
%S Second (00-61) 02
%t Horizontal-tab character ('\t')
%T ISO 8601 time format (HH:MM:SS), equivalent to%H:%M:%S 14:55:02
%u ISO 8601 weekday as number with Monday as1(1-7) 4
%U Week number with the first Sunday as the first day of week one (00-53) 33
%V ISO 8601 week number (00-53) 34
%w Weekday as a decimal number with Sunday as0(0-6) 4
%W Week number with the first Monday as the first day of week one (00-53) 34
%x Date representation * 08/23/01
%X Time representation * 14:55:02
%y Year, last two digits (00-99) 01
%Y Year 2001
%z ISO 8601 offset from UTC in timezone (1 minute=1, 1 hour=100)
If timezone cannot be termined, no characters
+100
%Z Timezone name or abbreviation *
If timezone cannot be termined, no characters
CDT
%% A%sign %
* The specifiers marked with an asterisk (*) are locale-dependent.
Note: Yellow rows indicate specifiers and sub-specifiers introduced by C99. Since C99, two locale-specific modifiers can also be inserted between the percentage sign ( % ) and the specifier proper to request an alternative format, where applicable:
Modifier Meaning Applies to
E Uses the locale's alternative representation %Ec %EC %Ex %EX %Ey %EY
O Uses the locale's alternative numeric symbols %Od %Oe %OH %OI %Om %OM %OS %Ou %OU %OV %Ow %OW %Oy



你可能感兴趣的:(time)