在 CentOS 系统中,C++ 可以使用 库来处理时间相关的功能。下面是一些常用的时间函数及其用法示例:
-
获取当前时间
使用
std::time函数可以获取当前的日历时间。#include#include int main() { std::time_t currentTime = std::time(nullptr); std::cout << "Current time: " << std class="hljs-built_in">ctime(¤tTime); return 0; } std::ctime返回一个表示时间的字符串。 -
将时间转换为本地时间
使用
std::localtime函数可以将std::time_t类型的时间转换为本地时间。#include#include int main() { std::time_t currentTime = std::time(nullptr); std::tm* localTime = std::localtime(¤tTime); char buffer[80]; std::strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", localTime); std::cout << "Local time: " << buffer class="hljs-keyword">return 0; } -
获取特定时间点的值
可以使用
std::tm结构来设置特定的日期和时间,然后使用std::mktime转换为std::time_t。#include#include int main() { std::tm timeStruct = {}; timeStruct.tm_year = 2023 - 1900; // 年份从1900开始 timeStruct.tm_mon = 10 - 1; // 月份从0开始 timeStruct.tm_mday = 1; // 日 timeStruct.tm_hour = 12; // 小时 timeStruct.tm_min = 30; // 分钟 timeStruct.tm_sec = 45; // 秒 std::time_t specificTime = std::mktime(&timeStruct); std::cout << "Specific time: " << std class="hljs-built_in">ctime(&specificTime); return 0; } -
睡眠函数
如果需要让程序暂停一段时间,可以使用
std::sleep或std::usleep。#include#include #include int main() { std::cout << "Sleeping for 2 seconds..." << std class="hljs-built_in">sleep_for(std::chrono::seconds(2)); std::cout << "Awake now!" << std class="hljs-keyword">return 0; } 注意:
std::sleep和std::usleep在 POSIX 系统上可用,如果在 Windows 上编译,可能需要使用不同的方法,例如Sleep函数。
这些是 C++ 中处理时间的一些基本用法。根据具体需求,还可以使用其他功能,如时间戳转换、格式化输出等。