C++ 标准库提供了丰富的功能,其中 <ctime> 是处理时间和日期的标准库之一。它提供了一组函数,用于获取当前时间、日期以及执行时间相关的计算。
<ctime> 库定义了一组与时间相关的函数和类型,这些函数和类型允许程序员在程序中处理时间。它包括:
语法
以下是 <ctime> 库中一些常用函数的基本语法:
time_t t = time(NULL);
struct tm *tm = localtime(&t);
struct tm *tm_utc = gmtime(&t);
char buffer[80]; strftime(buffer, 80, "%Y-%m-%d %H:%M:%S", tm);
实例
下面是一个使用 <ctime> 库的简单示例,展示如何获取当前时间并格式化输出。
#include <iostream>#include <ctime>#include <iomanip>#include <sstream> int main() { // 获取当前时间 time_t now = time(NULL); // 将当前时间转换为本地时间 struct tm *local_tm = localtime(&now); // 使用 strftime 格式化时间 char buffer[80]; strftime(buffer, 80, "%Y-%m-%d %H:%M:%S", local_tm); // 输出当前时间 std::cout << "Current local time: " << buffer << std::endl; // 将当前时间转换为UTC时间 struct tm *utc_tm = gmtime(&now); // 格式化UTC时间 strftime(buffer, 80, "%Y-%m-%d %H:%M:%S", utc_tm); // 输出UTC时间 std::cout << "Current UTC time: " << buffer << std::endl; return 0;}
运行上述程序,你将看到类似以下的输出(具体时间取决于你运行程序的时间):
Current local time: 2023-04-01 12:34:56 Current UTC time: 2023-04-01 12:34:56
请注意,由于时区差异,本地时间和UTC时间可能相同,也可能不同。
<ctime> 库是 C++ 中处理时间和日期的重要工具。通过上述示例,我们可以看到如何使用 <ctime> 库来获取和格式化当前时间。这在开发需要时间信息的应用程序时非常有用,例如日志记录、定时任务等。希望这篇文章能帮助初学者更好地理解和使用 <ctime> 库。