> 文档中心 > 为啥在VS中使用scanf函数会有警告呢?如何解决此问题?(如何添加#define _CRT_SECURE_NO_WARNINGS 1)

为啥在VS中使用scanf函数会有警告呢?如何解决此问题?(如何添加#define _CRT_SECURE_NO_WARNINGS 1)


一,版本:VS2022(VS2013以上版本都可用此类方法,我的版本为2022)

二,为啥在VS中使用scanf,strcpy strlen strcat 等函数会有警告呢?

scanf是c语言提供的函数,但函数本身自带安全性问题,微软工程师为了解决这些安全问题,在VS2013以上的版本上添加了scanf_s 这类函数。
scanf_s vs编辑器提供的,虽然提高了安全性能,但移植性太差,故不建议使用。

三,解决方案

1.在每个代码的第一行添加# define _CRT_SECURE_NO_WARNINGS 1
缺点:每次都要添加,效率太低。
2.一劳永逸的方案,建议使用。

第一步:装好VS后,找到VS的安装目录(点中VS编译器图标,右击,点击“属性”,在起始位置中可以看到VS的安装目录)
这里插入图片描述
第二步,按路径

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
用notepad++打开,保存
在这里插入图片描述
选择管理员模式启动,notepad++会重新启动,保存即可

notepad++链接 点击下载

四,展示

按上述方法二设置之后,每次打开VS会自动出现。在这里插入图片描述