首页 > 其他分享 >c语言获取系统当前时间

c语言获取系统当前时间

时间:2024-05-31 20:43:31浏览次数:12  
标签:rawtime 语言 timeinfo 获取 tm 当前 time localtime ctime

c语言获取系统当前时间

在C语言中,ctimelocaltime 是两个与日期和时间处理相关的函数,但它们的用途和功能有所不同。这两个函数通常与 <time.h> 头文件一起使用。

  1. ctime:
    • char *ctime(const time_t *timer);
    • 这个函数将一个以秒为单位的时间戳(time_t 类型)转换为一个可读的字符串形式,格式为 "Day Mon DD HH:MM:SS YYYY\n"。例如,"Wed Jun 30 21:49:08 2023\n"
    • 这个字符串是静态分配的,所以每次调用 ctime 时,它都会覆盖前一次的结果。
    • 通常,你会首先使用 time(&rawtime) 来获取当前时间的时间戳,然后将其传递给 ctime 以获取可读的字符串表示。
  2. localtime:
    • struct tm *localtime(const time_t *timer);
    • 这个函数也将一个时间戳(time_t 类型)作为输入,但它返回一个指向 struct tm 结构体的指针,该结构体包含了关于时间的详细信息,如年、月、日、小时、分钟、秒等。
    • 这个 struct tm 结构体不是静态分配的,所以你需要确保正确地管理其生命周期(例如,如果你是在函数中分配它,你可能需要在函数返回之前释放它)。
    • localtime 函数返回的 struct tm 结构体中的时间是基于本地时区的。

示例1

/*******************************************************************
*
*	file name:	get_time.c
*	author	 :  [email protected]
*	date	 :  2024/05/31
*	function :  利用time库的localtime函数获取系统当前时间
* 	note	 :  None
*
*	CopyRight (c)  2023-2024   [email protected]  All Right Reseverd 
*
* *****************************************************************/
#include <stdio.h>  
#include <time.h>  
  
int main() {  
    time_t rawtime;  
    struct tm * timeinfo;  
  
    time(&rawtime);  
    timeinfo = localtime(&rawtime);  
  
    printf("当前本地时间和日期是: %04d-%02d-%02d %02d:%02d:%02d\n",
        timeinfo->tm_year + 1900,  // 年份是从1900年开始的,所以要+1900  
        timeinfo->tm_mon + 1,  // 月份是从0开始的,所以要+1  
        timeinfo->tm_mday,  
        timeinfo->tm_hour,  
        timeinfo->tm_min,  
        timeinfo->tm_sec);  

     
    return 0;  
}

示例2

/*******************************************************************
*
*	file name:	get_time.c
*	author	 :  [email protected]
*	date	 :  2024/05/31
*	function :  利用time库的ctime函数获取系统当前时间
* 	note	 :  None
*
*	CopyRight (c)  2023-2024   [email protected]  All Right Reseverd 
*
* *****************************************************************/
#include <stdio.h>  
#include <time.h>  
  
int main() {  
    time_t rawtime;  
    struct tm * timeinfo;  
  
    time(&rawtime);  
  
    printf("ctime: %s", ctime(&rawtime));  
  
  
    return 0;  
}

如果代码用法有什么问题,请将问题发至网易邮箱 [email protected],作者将及时改正,欢迎与各位老爷交流讨论。

麻烦三连加关注!!!!

比心

标签:rawtime,语言,timeinfo,获取,tm,当前,time,localtime,ctime
From: https://www.cnblogs.com/zkbklink/p/18225255

相关文章

  • 【C语言】文件操作全解速览
    文件操作目录文件操作1.文件的打开和关闭fopen()/fclose()2.文件读写位置相关feof()ftell()fseek()rewind()3.文件内容读取fgetc()/fputc()fgets()/fputs()fprintf()/fscanf()fread()/fwrite()fflush()4.其他stat()/fstat()remove()rename()最后文件操作 ......
  • 获取shell后各种命令及操作
    1、获取目标分区情况runpost/windows/gather/forensics/enum_drives2、检测是否是虚拟主机runpost/windows/gather/checkvm3、获取当前安装的应用程序runpost/windows/gather/enum_applications4、获取用户登录信息runpos......
  • C语言相关介绍及编译器的使用教程
    文章目录C语言相关介绍及编译器的使用教程一、C语言是什么二、C语言的历史三、编译器的选择1.编译和链接2.VS2022使用步骤四、第一个C语言程序C语言相关介绍及编译器的使用教程一、C语言是什么二、C语言的历史三、编译器的选择及相关介绍和使用四、第一个C......
  • 如何快速获取那些可以使用的摄像头编号
    importcv2 #导入OpenCV库#尝试检测系统中可用的摄像头索引defget_camera_indices(max_tested=10): #定义一个函数,用于检测系统中可用的摄像头索引,默认最大测试到10  available_indices=[] #初始化一个空列表,用于存储可用的摄像头索引  foriinran......
  • 初识C语言--第二天
       ---取地址符:&      & 叫做取地址符;&+变量名:可以获取变量在内存中的地址(通过%p可以打印在内存中的地址)示例:输出结果:(注:Linux64位操作系统环境下,打印出来的地址会很大,因为在64位操作系统中,地址变量在内存中占有8个字节)---C语言的输入函数scanf......
  • R语言学习 - 箱线图(小提琴图、抖动图、区域散点图)
    箱线图箱线图是能同时反映数据统计量和整体分布,又很漂亮的展示图。在2014年的NatureMethod上有2篇Correspondence论述了使用箱线图的好处和一个在线绘制箱线图的工具。就这样都可以发两篇Naturemethod,没天理,但也说明了箱线图的重要意义。下面这张图展示了Barplot、Box......
  • 【c语言】指针就该这么学(1)
    ......
  • 初识C语言第三十天——设计三子棋游戏
    目录一.设计游戏框架1.打印游戏菜单2.输入选择判断(玩游戏/游戏结束/输入错误重新输入)  二、玩游戏过程设计1.设计棋格存放棋子——二维数组2.初始化棋盘——初始化为空格3.打印棋盘——本质上就是打印数组4.游戏过程——1.玩家走棋2.判断结果 3.电脑走棋4.判断结......
  • 采用java18+vue语言+springboot开发的家政上门服务平台源码,(平台管理端+用户端+服务端
    采用java18+vue语言+springboot开发的家政上门服务平台源码,(平台管理端+用户端+服务端全套源码)家政管理平台系统是运用现代计算机和网络技术,集信息网、服务网为一体,对社区家政需求信息汇集整理、综合处理,发挥信息介绍、组织服务、资源共享的作用,向社区居民提供优质服务的网络......
  • CH57x/CH58x/CH59x获取从机广播信息
    有时需要通过主机设备(MCU非手机)获取从设备的广播信息例如广播包,MAC地址,扫描应答包等以下的程序片段及功能实现是在WCH的CH59X的observer例程上实现的;1、获取广播包所有的函数在库函数中都可以找到,具体实现函数如下:caseGAP_DEVICE_INFO_EVENT:{Observ......