ctime ()- 将时间转换为字符串
格式
#include <time.h>
char *ctime(const time_t *time);语言级别
ANSI
线程安全
False
请改为使用 ctime_r() 。
语言环境敏感
此函数的行为可能受当前语言环境的 LC_TOD 类别影响。 有关更多信息,请参阅 了解 CCSID 和语言环境。
描述
ctime() 函数将 time 指向的时间值以字符串形式转换为本地时间。 通常通过调用 time() 函数来获取时间值。
ctime() 生成的字符串结果正好包含 26 个字符,并且具有以下格式: "%.3s %.3s%3d %.2d:%.2d:%.2d %d\n"例如: Mon Jul 16 02:03:55 1987\n\0ctime() 函数使用 24 小时制的时钟格式。 这些日子缩写为: Sun, Mon, Tue, Wed, Thu, Fri和 Sat。 月份缩写为: Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov和 Dec。 所有字段都具有恒定宽度。 只有一个数字的日期前面有一个零。 换行符 (\n) 和空字符 (\0) 占据字符串的最后两个位置。
返回值
ctime() 函数返回一个指向字符串结果的指针。 如果该函数不成功,那么它将返回 NULL。 对 ctime() 函数的调用等效于: asctime(localtime(&anytime)) 注:
asctime() 和 ctime() 函数以及其他时间函数可以使用公共的静态分配缓冲区来保存返回字符串。 对其中一个函数的每个调用都可能破坏先前调用的结果。 asctime_r(), ctime_r(), gmtime_r()和 localtime_r() 函数不使用公共的静态分配缓冲区来保存返回字符串。 如果需要 reentrancy ,那么可以使用这些函数来代替 asctime(), ctime(), gmtime()和 localtime() 。示例
此示例使用
time()轮询系统时钟。 然后,它会打印一条消息,给出当前日期和时间。#include <time.h>
#include <stdio.h>
int main(void)
{
time_t ltime;
time(<ime);
printf("the time is %s", ctime(<ime));
}
相关信息
- asctime ()-将时间转换为字符串
- asctime_r ()-将时间转换为字符串 (可重新启动)
- ctime_r ()-将时间转换为字符串 (可重新启动)
- ctime64()-将时间转换为字符串
- ctime64_r()-将时间转换为字符串 (可重新启动)
- gmtime ()-转换时间
- gmtime64()-转换时间
- gmtime64_r()-转换时间 (可重新启动)
- gmtime_r ()-转换时间 (可重新启动)
- localtime ()-转换时间
- localtime64()-转换时间
- localtime64_r()-转换时间 (可重新启动)
- localtime_r ()-转换时间 (可重新启动)
- mktime ()-转换本地时间
- mktime64()-转换本地时间
- setlocale ()-设置语言环境
- strftime ()-将日期/时间转换为字符串
- time ()-确定当前时间
- time64()-确定当前时间
- printf ()-打印格式化字符
- <time.h>