C语言-获取当前时间-格式化输出(完整代码)

注:获取时间格式化输出的方式有很多,本文只介绍其中之一

本文主要介绍使用 time获取秒,localtime格式化输出

运行环境 Ubuntu 20.04.3 LTS

目录

源码

代码介绍

基本介绍

执行截屏


源码

#include 
#include 
#include 

int main()
{
	time_t t;
	while(1)
	{
		time(&t);
		struct tm *myt = localtime(&t);
		printf("%d-%d-%d %d:%d:%d\n",myt->tm_year+1900,myt->tm_mon+1,myt->tm_mday,myt->tm_hour,myt->tm_min,myt->tm_sec);
		usleep(999999);
	}

	return 0;
}

代码介绍

#include         
#include         //这个是获取时间的头文件
#include         //这个是 usleep 用的

int main()
{
    time_t t;        //定义了一个变量,用于存储秒数
    while(1)        //制造一个死循环
    {

        /* 注:由于 每次执行时,都需要重新获取秒数,所以time函数需要放到循环中 */
        time(&t);        //获取时间-- 1970年到现在的秒数,存储到了变量 t 里
        struct tm *myt = localtime(&t);        //格式化,把t里的秒数,按照格式输出给前面的 tm结构体
        printf("%d-%d-%d %d:%d:%d\n",myt->tm_year+1900,myt->tm_mon+1,myt->tm_mday,myt->tm_hour,myt->tm_min,myt->tm_sec);
        usleep(999999);        //打印测试,加个延时玩玩
    }

    return 0;
}

基本介绍

    time_t  变量类型为 signed long long int
    time 函数 :获取从1970-01-01 00:00:00 到 现在的 所有秒数 -- 可以打印测试
    localtime : 格式化输出,将 秒数 格式化 赋值 给 tm结构体
            函数原型 struct tm *localtime(const time_t *timer)
            tm结构体 如下
            struct tm  
            {  
               int tm_sec;         //秒,范围从 0 到 59
               int tm_min;         //分,范围从 0 到 59
               int tm_hour;        //小时,范围从 0 到 23
               int tm_mday;      // 一月中的第几天,范围从 1 到 31
               int tm_mon;        // 月,范围从 0 到 11(注意:使用时需要加1使用)
               int tm_year;        // 自 1900 年起的年数
               int tm_wday;        // 星期几,范围从 0 到 6
               int tm_yday;        //一年中的第几天,范围从 0 到 365 
               int tm_isdst;       // 夏令时
            };

执行截屏

C语言-获取当前时间-格式化输出(完整代码)_第1张图片

你可能感兴趣的:(C语言-基础编程,文件IO,c语言,开发语言,后端)