C库 - ctime() 函数



C库的`ctime()`函数返回一个字符串,该字符串表示基于参数timer的本地时间。它将时钟表示的时间(自纪元以来的秒数)转换为本地时间字符串格式。

返回的字符串具有以下格式:Www Mmm dd hh:mm:ss yyyy,其中Www是星期几,Mmm是月份的字母缩写,dd是月份中的日期,hh:mm:ss是时间,yyyy是年份。

语法

以下是C库`ctime()`函数的语法:

char *ctime(const time_t *timer)

参数

此函数只接受一个参数:

  • timer - 这是指向包含日历时间的time_t对象的指针。

返回值

此函数返回一个C字符串,其中包含以人类可读格式表示的日期和时间信息。

示例1

以下是一个基本的C库程序,演示`ctime()`函数的使用。

#include <stdio.h>
#include <time.h>

int main () {
   time_t curtime;

   time(&curtime);

   printf("Current time = %s", ctime(&curtime));

   return(0);
}

输出

执行上述代码后,我们将得到以下结果:

Current time = Mon Aug 13 08:23:14 2012

示例2

在打印日期和时间时,它使用time()函数检索当前系统时间(自纪元以来的秒数),并使用ctime()函数将时间转换为字符串格式。

#include <stdio.h>
#include <time.h>

int main() {
   // Current date/time
   time_t tm = time(NULL);
   // convert into string
   char* st = ctime(&tm);
   printf("Date/Time: %s", st);
   return 0;
}

输出

执行代码后,我们将得到以下结果:

Date/Time: Tue May 14 06:50:22 2024

示例3

下面的C示例使用time()函数计算从现在起一小时后的本地时间,并使用ctime()函数以人类可读的格式显示它。

#include <stdio.h>
#include <time.h>

int main() {
   // Create a time_t object representing 1 hour from now
   time_t one_hour_from_now = time(NULL) + 3600;

   // Convert one_hour_from_now to string form
   char* dt = ctime(&one_hour_from_now);

   // Print the date and time
   printf("One hour from now, the date and time will be: %s\n", dt);
   return 0;
}

输出

上述代码产生以下结果:

One hour from now, the date and time will be: Tue May 14 07:23:22 2024
广告