Visual Studio中出现_CRT_SECURE_NO_WARNINGS报错警告信息解决方法

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,关注我,不迷路~~~~

  • 10
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zz小叔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值