C 参考手册

定义于头文件 <time.h>
time_t time( time_t *arg );

返回编码成 time_t 对象的当前日历时间,并将其存储于 arg 指向的 time_t 对象(除非 arg 为空指针)。

参数

arg - 指向将存储时间的 time_t 对象的指针,或空指针

返回值

成功时返回编码成 time_t 对象的当前日历时间。错误时返回 (time_t)(-1) 。若arg不是空指针,则返回值也会存储于 arg 所指向的对象。

注意

日历时间在 time_t 中的编码是未指定的,但多数系统遵循 POSIX 规定,返回保有从纪元开始至今秒数的整数类型值。 time_t 为32位有符号整数的实现(许多历史上的实现)会在 2038 年出错。

示例

#include <stdio.h>
#include <time.h>
#include <stdint.h>
 
int main(void)
{
    time_t result = time(NULL);
    if(result != (time_t)(-1))
        printf("The current time is %s(%jd seconds since the Epoch)\n",
               asctime(gmtime(&result)), (intmax_t)result);
}

可能的输出:

The current time is Fri Apr 24 15:05:25 2015
(1429887925 seconds since the Epoch)

引用

  • C11 standard (ISO/IEC 9899:2011):
  • 7.27.2.4 The time function (p: 391)
  • C99 standard (ISO/IEC 9899:1999):
  • 7.23.2.4 The time function (p: 341)
  • C89/C90 standard (ISO/IEC 9899:1990):
  • 4.12.2.4 The time function

参阅

将从纪元开始的时间转换成以本地时间表示的日历时间
(函数)
将从纪元开始的时间转换成以协调世界时(UTC)表示的日历时间
(函数)
返回基于给定时间基底的日历时间
(函数)