Visual Studio程序中出现_CRT_SECURE_NO_WARNINGS报错警告信息解决方法
hello,uu们,接我的上篇博客
Dev-C++及Visual Studio 安装和使用方法
咱们继续说起,上篇还剩一个小尾巴咱们今天就把它消灭掉!
举个例子,假如在程序中输入以下代码:
#include<stdio.h>
int main() {
int a = 0;
scanf("%d", &a);
printf("%d", a);
return 0;
}
然后进行编译(快捷键Ctrl+F5),你会得到下图结果:
结果显示项目文件生成失败,原因是什么呢?我们将编译日志向右拉,看一下报错信息,如下图:
报错信息说
scanf
函数是不安全的,VS无法信任这个函数。如果想要使用
scanf
函数的话请换成
scanf_s
函数。但是我们学习的是C语言,scanf_s是C++里面的函数,我们如果就想使用scanf函数应该如何进行操作呢?
我们可以将报错信息中的
_CRT_SECURE_NO_WARNINGS
复制下来运用宏定义(#define)添加到整段代码的开头,也就是在整段代码开头加上如下这一行代码:
#define _CRT_SECURE_NO_WARNINGS 1
完整代码如下所示(照顾纯初学者,可能不大好理解):
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main() {
int a = 0;
scanf("%d", &a);
printf("%d", a);
return 0;
}
待我们将这些代码输好以后,我们再次编译,结果如下所示:
文件编译成功,程序可以运行!!!
问题虽然解决了,但是难道我们每次都要加上这一行代码吗?这样也太麻烦了!那么下面的方法就可以一劳永逸解决这个问题(嘿哈)
首先我们要弄懂一件事情,我们在VS里面创建的.c文件并不是凭空生成的,创建的.c文件全部拷贝于一个叫做
newc++file.cpp
的文件,如果我们在这个文件里面加上 :
#define _CRT_SECURE_NO_WARNINGS 1
是不是就可以一劳永逸解决这个问题啦~~
好,废话不多说,下面是具体的解决方法:
首先我们需要找到找到
newc++file.cpp
这个文件,我使用的是一个叫做
Everything
的软件。
Everything下载链接
:
http://www.voidtools.com/zh-cn/
然后你会来到如下界面,点击
下载安装版
,安装过程中什么都不需要修改,一直默认就OK(当然安装路径可以改动):
安装完成之后,打开Everything,在上方搜索栏中搜索newc++file.cpp,就会出现目标文件(如下图)
如果有的uu有多个newc++file.cpp文件的话,说明你下载过多个版本的Visual Studio,那就要看你准备用哪个版本的VS来写代码了,以我的为例,我使用的是2022版本,大家可以在我的路径中看到一个2022。
好,到达这一步大家应该都找到对应的newc++file.cpp文件了吧,我们用鼠标右击文件,选择
打开路径
选项,就会跳到newc++file.cpp所在的文件夹(如下以我为例):
接下来将newc++file.cpp文件拷贝到桌面上,打开桌面上的newc++file.cpp文件(推荐使用记事本打开),打开之后,加上代码
#define _CRT_SECURE_NO_WARNINGS 1
并保存退出。
文件修改完毕之后,我们复制刚刚修改的桌面上的newc++file.cpp,将它粘贴到原来的newc++file.cpp文件位置,会出现如下提示,我们选择
替换目标中的文件
选项(如下)
替换完成之后,就大功告成啦,这时我们在VS创建一个新的项目,就会发现自动在程序开头加上了
#define _CRT_SECURE_NO_WARNINGS 1
这行代码~~~
好了以上就是VS需要解决的最后一点小问题啦,从阿Z的下篇博客开始就要正式开启C语言学习之旅啦,欢迎大家前来围观!!!
ps:本篇博客如果有错误之处欢迎大家前来斧正!!
pps:我叫阿Z,关注我,不迷路
~~~~