vs2012 中如何获得系统当前时间,就是年月日的那种???

初学c++,用的是VisualStudio2012,在网上找的这样的代码,time_tcurtime=time(0);tmtimeinfo;tmtim=*localtim... 初学c++,用的是Visual Studio2012,在网上找的这样的代码,
time_t curtime=time(0);
tm timeinfo;
tm tim =*localtime(&curtime);
int day,mon,year;
day=tim.tm_mday;
mon=tim.tm_mon;
year=tim.tm_year;
std::cout<<year+1900<<"年"<<mon+1<<"月"<<day<<"日"<<std::endl;

运行出现错误:error C4996: 'localtime': This function or variable may be unsafe. Consider using localtime_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. S
然后我把localtime改成localtime_s之后,它提示ocaltime_s需要两个参数,然后就不知道怎么办了,求救!!!
那段代码在vs2010上就可以运行,在vs2012就不可以。。。
展开
 我来答
dfdglei
推荐于2017-12-11 · TA获得超过1195个赞
知道小有建树答主
回答量:747
采纳率:100%
帮助的人:753万
展开全部
localtime_s的两个参数,localtime_s(struct tm * _Tm, const time_t * _Time)
其中struct tm * _Tm就是localtime的返回值
所以你把你这句tm tim =*localtime(&curtime);
改成
tm tim;

localtime_s(&tim, &curtime);

试试
百度网友e2dbec6
2013-07-23 · TA获得超过273个赞
知道小有建树答主
回答量:367
采纳率:0%
帮助的人:255万
更多追问追答
追问
那个早就看过了,也试过了,还是错。。。
追答
#define _CRT_SECURE_NO_WARNINGS试试

放到所有#include的上面
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
叛逆的新新智d1580ba
2017-12-10
知道答主
回答量:28
采纳率:0%
帮助的人:6.5万
展开全部
里面有一个参数是tm类型的指针,&tim代入就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式