Unix 时间处理函数全解析
在 Unix 系统和 C 语言编程中,处理时间是一个常见且重要的任务。本文将详细介绍一系列与时间相关的函数,包括获取时间、设置时间、调整时间以及让进程休眠等操作。
1. 获取当前时间
1.1 time() 函数
time()函数用于返回自纪元(Epoch,通常是 1970 年 1 月 1 日 00:00:00 UTC)以来经过的秒数,以此作为当前时间的表示。如果参数t不为NULL,该函数还会将当前时间写入到提供的指针中。
#include <time.h> #include <stdio.h> int main() { time_t t; printf("current time: %ld\n", (long) time(&t)); printf("the same value: %ld\n", (long) t); return 0; }若出现错误,函数返回-1(转换为time_t类型),并相应地设置errno。唯一可能的错误是EFAULT,表示t是一个无效指针。
需要注意的是,time_t表示的“自纪元以来经过的秒数”并非实际经过的秒数。Unix 计