利用localtime_s函数格式化输出当地日期与时间

摘要:
在Visual Studio 2010和更高版本中,添加了安全函数并将其更改为localtime_s()的语法格式也已更改:1 errno_tlocaltime_s;包括:1_ Tm2指向要填充的时间结构的指针。3time4指向存储时间的指针。如果成功,则返回值为零。如果失败,返回值将是错误代码。如果TZ设置了环境变量,C运行时将假定规则适用于美国。它用于输出具有如下实例的本地日期和时间:1#include 2#include<string。h˃ 3#包含 45intmain6{7structtmt;//tm结构指针8time_tnow;//声明time_t类型变量9time;//获取系统日期和时间10localtimeus;//获取本地日期和时间1112//格式并输出本地时间13printf;14printf;15printf;16printf;17printf;18printf;19printf;20printf;21printf;22system;23//getchar();24return0;2526}

转载:https://blog.csdn.net/xingcen/article/details/55669054

Visual C++ 6.0开发环境中显示当地日期与时间主要通过localtime()函数来实现,该函数的原型在time.h头文件中,其语法格式如下:

1 struct tm *localtime(xonst time_t *timer)

该函数的作用是把timer所指的时间(如函数time返回的时间)转换为当地标准时间,并以tm结构形式返回。其中,参数timer为主要获取当前时间的传递参数,格式为time_t指针类型。

而在Visual Studio 2010极其以后的版本,新增了安全函数,改成localtime_s(),语法格式也发生了变化:

1 errno_t localtime_s(
2    struct tm* _tm,
3    const time_t *time 
4 );

其中:

1 _tm
2 指向要填充的时间结构的指针。
3 time
4 指针,指向存储的时间。

如果成功,返回值则为零。 如果失败,返回值将是错误代码。 错误代码是在 Errno.h 中定义的。

结构类型的字段 tm 存储下面的值,其中每个为 int。

tm_sec
分钟后的几秒 (0-59)。
tm_min
小时后的分钟 (0-59)。
tm_hour
午夜后经过的小时 (0-23)。
tm_mday
月 (1-31) 天。
tm_mon
月 (011;年 1 月 = 0)。
tm_year
年份 (当前年份减去 1900年)。
tm_wday
星期几 (06;星期日 = 0)。
tm_yday
每年的一天 (0-365;11 日 = 0)。
tm_isdst
如果夏令时有效,则为,正值夏时制不起作用; 如果为 0如果夏时制的状态是未知的负值。 如果 TZ 设置环境变量,C 运行库会假定规则适用于美国境内用于实

下面以一个实例来输出当地日期与时间:

 1 #include <stdio.h>
 2 #include <string.h>
 3 #include <time.h>
 4  
 5 int main(void)
 6 {
 7     struct tm t;   //tm结构指针
 8     time_t now;  //声明time_t类型变量
 9     time(&now);      //获取系统日期和时间
10     localtime_s(&t, &now);   //获取当地日期和时间
11         
12     //格式化输出本地时间
13     printf("年:%d
", t.tm_year + 1900);
14     printf("月:%d
", t.tm_mon + 1);
15     printf("日:%d
", t.tm_mday);
16     printf("周:%d
", t.tm_wday);
17     printf("一年中:%d
", t.tm_yday);
18     printf("时:%d
", t.tm_hour);
19     printf("分:%d
", t.tm_min);
20     printf("秒:%d
", t.tm_sec);
21     printf("夏令时:%d
", t.tm_isdst);
22     system("pause");
23     //getchar();
24     return 0;
25  
26 }

免责声明:文章转载自《利用localtime_s函数格式化输出当地日期与时间》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇C#操作Xml:XPath语法 在C#中使用XPath示例Vim 自动文件头注释与模板定义下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

如何在jenkins上新建一个项目及其简单配置

单击[新建]进入选择页面,您可以在此页面上配置项目(包括拉取源代码、修改连续构建时间以及在打包和部署之前修改配置文件)3。在General中,您可以设置要构建的版本,如下图5所示。在源代码管理模块中,您可以设置源代码地址(我们公司常用的Git)6。如果是自动构建,您可以将自动构建时间(即构建频率)设置为7。以下是构建中的一些设置。您可以使用shell修改源代...

java.net.URISyntaxException的解决办法

直接采用Stringurl=“http:count=1”;HttpGethttpget=新的HttpGet(url);HttpResponseresponse=client.execute(httpget);例如,“|”&amp;因此,不能直接使用String而不是URI来访问。然后我们可以使用URL生成URI的方法来解决这个问题。代码如下:URLu...

ubuntu的ufw如何开放特定端口?

ubuntu的ufw是如何打开特定端口的?1.安装sudoapt getinstallufw2.启用sudoufwenable以默认情况下禁用外部访问sudoufwdefaultdeny 3.查看状态sudoufwstatus4.添加端口sudoufwallow80805。删除端口sudoufwdeleteallow808080806。允许特定源的IP地址从...

SQL SERVER 查看数据库执行过哪些语句(SQL历史语句记录)

SQLSERVER查看数据库已执行的语句(SQL历史语句记录)1.查看SQL执行效率和语句SelectTOP1000ST。textAS“SQL语句已执行”,QS。execution_CountAS'执行次数',QS。total_ elapsed_timeAS“耗时”,QS。total_logical_ReadsAS“逻辑读取次数”,QS。total_logi...

Java成长之路

如何学习如何从初级Java程序员成长为合格的架构师,或者一个合格的架构师应该拥有什么样的技术知识体系,这不仅是一个刚进入职场的初级程序员,也是一个工作了三年或五年后感到困惑的老程序员面临的问题。首先必须明确Java的突出之处和不同之处。...

uniapp 实现动态切换全局主题色

要求:要在开发的应用程序中切换主题颜色,如果只需要一种主题颜色,但不需要切换,则可以使用uniappSCSS文件文档思想:预先在公共css中定义所需的主题颜色。这里只是一个定义两种颜色的参考文档的示例,可以从中获得想法。您可以使用css属性选择器动态设置数据xx以动态更改主题颜色。最初,您希望将一个变量直接混合到mixin中,以实现主题颜色的全局控制,忽略了...