IO学习系列之获取系统的实时日期

  • time函数:
  • 功能:获取系统时间(返回的是距离 1970-01-01 00:00:00秒数)
  • 具体内容:
#include 

time_t time(time_t *tloc);
/*
参数:

    	tloc:	如果为NULL,则通过返回值获取结果
        	
        		如果非NULL,则可以通过地址传参获取结果
   
返回值:

    	成功 	返回秒数
    	
    	失败 	-1 	重置错误码
*/
  • localtime函数:
  • 功能:把time函数获取的系统时间(秒数)转换成日常生活中的(年月日时分秒);
  • 具体内容:
#include 

struct tm *localtime(const time_t *timep);
/*
参数:

    	通过time函数获取的秒数的变量的地址
    	
返回值:

    	成功 	struct tm 结构体指针
    	
    	失败 	NULL 	重置错误码
*/
struct tm {
    int tm_sec;    /* 秒 */
    int tm_min;    /* 分 */
    int tm_hour;   /* 小时 */
    int tm_mday;   /* 一个月中的第几天 */
    int tm_mon;    /* 月 (0-11) */
    int tm_year;   /* 年 - 1900 */
    int tm_wday;   /* 一周的第几天 */
    int tm_yday;   /* 一年中的第几天 */
    int tm_isdst;  /* 夏令时 已废弃 */
};

  • 示例代码:

#include 
#include 

int main(int argc, const char *argv[]){
    time_t sec;

    time(&sec);
	//获取系统时间(返回的是距离 1970-01-01 00:00:00 的秒数)
    printf("%ld\n",sec);

    //通过time函数获取的秒数的变量的地址
    struct tm *lk = localtime(&sec);
    
	// 把秒数转换成年月日时分秒
    printf("%4d-%02d-%02d %02d:%02d:%02d\n",\
        lk->tm_year+1900,lk->tm_mon+1,lk->tm_mday,\
        lk->tm_hour,lk->tm_min,lk->tm_sec);


    return 0;
}
  • 运行结果:
1695036506
2023-09-18 04:28:26

你可能感兴趣的:(IO学习系列,学习,算法,c语言,Linux)