函数
<ctime>

ctime

char* ctime (const time_t * timer);
将 time_t 值转换为字符串
timer 指向的值解释为日历时间,并将其转换为一个 C 字符串,该字符串包含对应时间日期的可读版本(本地时间)。

返回的字符串格式如下:

Www Mmm dd hh:mm:ss yyyy


其中 Www 是星期几,Mmm 是月份(字母表示),dd 是月份中的第几天,hh:mm:ss 是时间,yyyy 是年份。

字符串后面会跟一个换行符 ('\n'),并以空字符结尾。

此函数等同于:
1
asctime(localtime(timer))

有关自定义日期格式的替代方法,请参阅 strftime

参数

timer
指向 time_t 类型对象的指针,该对象包含一个时间值。
time_t 是一个基础算术类型的别名,能够表示由函数 time 返回的时间。

返回值

一个 C 字符串,包含易于阅读的日期和时间信息。

返回的值指向一个内部数组,该数组的有效性或值可能被后续对 asctimectime 的调用所改变。

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
/* ctime example */
#include <stdio.h>      /* printf */
#include <time.h>       /* time_t, time, ctime */

int main ()
{
  time_t rawtime;

  time (&rawtime);
  printf ("The current local time is: %s", ctime (&rawtime));

  return 0;
}

输出

The current local time is: Wed Feb 13 16:06:10 2013


数据竞争

该函数访问由 timer 指向的对象。
该函数还会访问并修改一个共享的内部缓冲区,这可能导致在并发调用 asctimectime 时发生数据竞争。某些库提供了一个避免此数据竞争的替代函数:ctime_r(不可移植)。

异常 (C++)

无异常保证:此函数从不抛出异常。

另见