本文主要是介绍为啥在VS中使用scanf函数会有警告呢?如何解决此问题?(如何添加#define _CRT_SECURE_NO_WARNINGS 1),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
相信很多初学者刚开始接触编程软件如VS2013时,在使用scanf函数时,总会出现下面的问题:
如果是在VS2013中,此类警告会导致程序生成不成功。我们看到该警告提示中前半部分说该函数不安全,考虑使用scanf_s函数来替换该函数。但是我们尽量不要使用scanf_s函数,因为此函数不是C语言库函数提供的函数,而是VS这个编译器自己提供的一个函数。如果我们在VS编译器中使用此函数则不会报警告,但是一旦换了编译器,则编译将不会通过。所以scanf_s不是一个可以跨平台使用的函数!!!
我们又看到上述警告后半部分说到可以使用 _CRT_SECURE_NO_WARNINGS来压制该警告。只要将#define _CRT_SECURE_NO_WARNINGS 1 放在程序最开始便可不再出现警告。但是这样的话我们每创建一个源文件都要手动添加#define _CRT_SECURE_NO_WARNINGS 1才可以。那么有什么方法可以让我们只要一创建源文件就会出现刚刚那个define语句呢?
第一步:装好VS后,找到VS的安装目录(点中VS编译器图标,右击,点击“属性”,在起始位置中可以看到VS的安装目录)
我的安装目录在C盘Program Files (x86) 目录下,所以先找到Program Files (x86)目录。
第二步:找到并进入VS安装目录下的VC目录
第三步: 点击进入vcprojectitems目录
第四步:找到并打开vcprojectitems目录下的newc++file文件
第五步:将#define _CRT_SECURE_NO_WARNINGS 1写入该文件并保存
到此,当下次在使用VS编译器时,系统便会自动添加#define语句,而不需要我们每次手动添加。
这篇关于为啥在VS中使用scanf函数会有警告呢?如何解决此问题?(如何添加#define _CRT_SECURE_NO_WARNINGS 1)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!