很多新人(比如我)在开始使用vs2017写c代码的时候,经常会遇到函数不安全报错的问题,如
有如下三种解决办法(个人推荐第三种):
1.文件包含 #define _CRT_SECURE_NO_WARNINGS
这里又分为两种情况:
(1)在 .c 文件中
有些项目比较简单,可能一个.c文件就能完成代码,这个时候把#define _CRT_SECURE_NO_WARNINGS 放在当前.c文件的第一行就可以了(注意:一定要是第一行)。
(2)在自定义 .h 文件中
在项目有自定义头文件时,也可以把 #define _CRT_SECURE_NO_WARNINGS 放在自定义的头文件中,当头文件有 #pragma once 时(防止头文件重复包含),上面的代码也可以放在其之后,如
此时在包含头文件时,自定义的头文件应该放在第一行,如
原理很简单,就不赘述了。
2.预处理器定义
项目–>属性–>C/C++–>预处理器–>预处理器定义,编辑右边输入框加入:_CRT_SECURE_NO_WARNINGS
保存。如:
3.关闭SDL检查
项目–>属性–>C/C++–>常规->SDL检查,选择否
个人觉得第三种方法最好用,简单一点。
注意:以上每种办法修改后都只适用当前项目,有新项目的时候,要重新设置。
本人新人一枚,如有描述不当之处还请各位指正。