std::time

来自cppreference.com
< cpp‎ | chrono‎ | c
 
 
工具库
语言支持
类型支持(基本类型、RTTI)
库功能特性测试宏 (C++20)
动态内存管理
程序工具
协程支持 (C++20)
变参数函数
调试支持
(C++26)
三路比较
(C++20)
(C++20)(C++20)(C++20)
(C++20)(C++20)(C++20)
通用工具
日期和时间
函数对象
格式化库 (C++20)
(C++11)
关系运算符 (C++20 中弃用)
整数比较函数
(C++20)(C++20)(C++20)   
(C++20)
交换类型运算
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
常用词汇类型
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)
初等字符串转换
(C++17)
(C++17)

 
 
 
在标头 <ctime> 定义
std::time_t time( std::time_t* arg );

返回编码为 std::time_t 对象的当前日历时间,并将它存储于 arg 所指向的对象,除非 arg 是空指针。

参数

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

返回值

成功时为编码为 std::time_t 的当前日历时间,错误时为 (std::time_t)(-1)。若 arg 非空,则亦存储返回值于 arg 所指向的对象。

注意

日历时间在 std::time_t 中的编码是未指定的,但多数系统遵循 POSIX 规范,返回整数类型的值,保有从纪元开始至今日历天数的 86400 倍数,加上从前一个 UTC 午夜起所经历的秒数。最需注意的是,POSIX 时间并未(且无法)纳入闰秒,因而这个整数并不等于从纪元开始所经过的 国际公制单位(S.I.)秒 数,而是减去了从纪元至今发生过的闰秒数。std::time_t 为 32 位有符号整数的实现(许多历史上的实现)会在 2038 年出错。

示例

#include <ctime>
#include <iostream>
 
int main()
{
    std::time_t result = std::time(nullptr);
    std::cout << std::asctime(std::localtime(&result))
              << result << " 自纪元起的秒数\n";
}

可能的输出:

Wed Sep 21 10:27:52 2011
1316615272 自纪元起的秒数

参阅

返回基于给定时间基底的以秒和纳秒计的日历时间
(函数)
转换纪元起时间为以本地时间表示的日历时间
(函数)
转换纪元起时间为以协调世界时表示的日历时间
(函数)
来自系统范畴实时时钟的挂钟时间
(类)