Microsoft visual studio关闭安全检查的几种方法

Microsoft Visual Studio(简称VS)是美国微软公司的开发工具包系列产品。是一款主流代码编辑器。

初学者对于VS的使用可能还不是很透彻,尤其是VS 的安全检查

下面介绍两种去除安全检查的方法,以VS2015为例,其他VS编译器操作方法基本一样

1.建好工程,临时补救

我们先输入一段简单的代码,

#include <stdio.h>

int main(void)
{
	int i;
	printf("请输入一个数字:");
	scanf("%d", &i);
	printf("这个数字是:%d\n", i);
	return 0;
}

然后编译一下可以看到,编译的报错提示:
报错提示可以看到,编译器提示我们 scanf 是不安全的,提示我们使用 scanf_s 来替代,但是替代后对于VS是可以接受的,换到其他编译器就不一定可以被接受了,这就导致程序的可移植性被破坏,所以我们此时可以使用后面的来补救一下,把其中的 “ _CRT_SECURE_NO_WARNINGS ”复制出来,放到代码的最前面,并在前面加上“ #define ”和一个空格,在后面写上“1”
就像这样:
就是这个头:

#define _CRT_SECURE_NO_WARNINGS 1

下面是完整的代码

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>

int main(void)
{
	int i;
	printf("请输入一个数字:");
	scanf("%d", &i);
	printf("这个数字是:%d\n", i);
	return 0;
}

再次编译就可以看到就没有报错提示,可以正常运行了
编译成功运行成功

关闭此项安全检查

既然是由于编辑器的安全检查而引起的报错,那么我们是不是可以选择去掉这项安全检查,而实现代码正常运行呢?
答案是可以的!
通过观察报错提示,可以看到错误提示号为:4996,我们可以在代码的头部加上如下的定义,来去掉该条报错:

# pragma warning(disable:4996)

这样 就可以实现了。

2.一劳永逸,不在麻烦

在上面的方法中,我们复制一下那个头
就是这个

#define _CRT_SECURE_NO_WARNINGS 1

然后在我们的VS安装路径中找到一个 newc++file.cpp 文件,
我的是在路径安装盘-VS2015-VC-vcprojectitems 中找到的,不同版本可能略有不同,如果找不到可以使用 Windows自带的搜索或是 第三方搜索工具(例如everything)来寻找,找到后,打开【我电脑所有的c文件都是默认VC++6.0打开的,没有的可以使用任意一个可以打开c文件的编译器打开】在里面的第一行放入这句话,Ctrl+S保存,就可以了
路径插入这句话
这样,在我们每个新建的项目前面就都会有一个已经写好的了,就很方便,就像这样,就再也不用担心安全检查了
新建项

3.在新建时的小心机

主要就是直接选择不用安全检查

选择【文件】-【新建项目】-【win32】-【win32控制台应用程序】
就像下图这样
新建项目然后确定,在下一步的安全检查中的【附加项目】中,取消其默认勾选的【编译开头】和【安全生命周期检查】,改为勾选【空项目】,就像这样:
不使用安全检查单击【完成】就可以了,然后添加一个后缀为.c的头文件,让我们再次放上上面的代码,

#include <stdio.h>

int main(void)
{
	int i;
	printf("请输入一个数字:");
		scanf("%d", &i);
	printf("这个数字是:%d\n", i);
	return 0;
}

编译一下,可以看到,是没有安全检查的,运行也是没有问题的
编译运行结果
好了,这就是解决VS编译器安全检查的四种方法,以后有更好的方法我会及时更。
感谢观赏,慢慢提高

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值