visual studio2019,‘scanf‘: This function or variable may be unsafe

visual studio中“函数或变量不安全问题”

visual studio2019,‘scanf‘: This function or variable may be unsafe_第1张图片

问题剖析’scanf’: This function or variable may be unsafe.

·微软认为scanf的使用存在安全隐患,因为c/c++中的字符串处理都是以\0为截止符的,如果搜索不到\0容易出现字符串越界。微软担心类似这些函数可能造成栈溢出,所以微软提供了另外一套vc安全标准库,改写了部分函数,如:scanf——>scanf_s.

解决方案:

(一、加_s法(虽简单但兼容性差)
根据错误信息提示使用安全的函数,函数后面加_s,如scanf_s.(加_s后的函数只能在vs系列编译器中使用,不便于代码移植等后续操作,所以不建议这种方法)
(二)宏定义法(一劳永逸)
·接下来介绍一种非常好用且省时的方法:宏定义
在这里插入图片描述
·根据错误信息提示,我们可以在源文件开头加上相应的宏定义。

#define _CRT_SECURE_NO_WARNINGS 

在这里插入图片描述

但是小伙伴们是不是发现这种好用是好用,但是每次新建文件后都要手动添加,那岂不是很麻烦。
这里再教大家一个一劳永逸的方法,每次新建文件后,它会自动放在文件开头。

步骤一:右击桌面图标“打开文件位置”
visual studio2019,‘scanf‘: This function or variable may be unsafe_第2张图片
步骤二:找到并打开“VC文件夹”
visual studio2019,‘scanf‘: This function or variable may be unsafe_第3张图片
步骤三:打开“vcprojectitems”
在这里插入图片描述

步骤四:获取权限。
1.找到“newc++file.cpp”文件,右击选择“属性”“
visual studio2019,‘scanf‘: This function or variable may be unsafe_第4张图片
2.“安全”——“高级”——“禁用继承”——应用
visual studio2019,‘scanf‘: This function or variable may be unsafe_第5张图片
3.再到“安全”——“编辑”
visual studio2019,‘scanf‘: This function or variable may be unsafe_第6张图片
4.给相应用户赋予操作权限,获取文件操作权限完毕。
visual studio2019,‘scanf‘: This function or variable may be unsafe_第7张图片

步骤五:记事本方法打开“newc++file.cpp”文件,编辑如下内容保存退出。

#define _CRT_SECURE_NO_WARNINGS 

以上操作完成后,当我们再次新建项目文件后,就出现如下图式样。如上问题便不会再困扰我们。visual studio2019,‘scanf‘: This function or variable may be unsafe_第8张图片

你可能感兴趣的:(visual studio2019,‘scanf‘: This function or variable may be unsafe)