【C++】错误 C4996 ‘localtime‘:This function or variable may be unsafe.

  • Post author:
  • Post category:其他
char ch[64];
strftime(ch, sizeof(ch), "%Y-%m-%d-%H-%M-%S", localtime(&t)); //年-月-日 时-分-秒

报错如下:

严重性    代码    说明    项目    文件    行    禁止显示状态
错误    C4996    ‘localtime’: This function or variable may be unsafe. Consider using localtime_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.    MyCardTest    d:\mycardtest\mycardtest\mycontrolcard.cpp    2071    

注意:这是报错,不是警告,在网上找了一些解决方案,都没有解决。

这是网上找的解决方法:

        Answer:

        1, 在项目设置的C/C++选项中,把检查64位移植性去掉。
        2, 方案a:使用_localtime_s, _localtime32_s, _localtime64_s这3个函数代替localtime
             方案b:去掉C4996警告,比如按照提示所说 
                #define _CRT_SECURE_NO_WARNINGS 1
                或者直接#pragma warning( disable : 4996 )

我的解决方案:

项目——属性——C/C++——命令行——其它选项  输入 /D _CRT_SECURE_NO_WARNINGS 

 


版权声明:本文为yaodaoji原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。