在用到VS时,每当我们用到‘scanf’时,会发现这时候会出现错误,那么这里我将具体来说明一下。
这里以VS2017为例,敲一段代码,当使用scanf时,这时会发现有一个错误。这时系统会提示'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.意思就是‘scanf’不安全,建议用‘scanf_s’代替。但是‘scanf_s’是只有在VS中特有的,其他很多编译器上不识别,为了让我们的代码无论在哪都可以顺利编译,这里我将介绍一种方法来解决此问题:
文章图片
文章图片
文章图片
- 首先找到VS2017图标,右键->属性,找到VS的文件目录如图1,按照这个依次在我的电脑打开D:\vs2017\Common7\IDE\如图2
![在VS一些版本用‘scanf’时出现错误的问题,不想用'scanf_s',这样设置,以后都不用再麻烦了](https://img.it610.com/image/info8/c84e6d827db5429895f822aec3475f8d.png)
文章图片
![在VS一些版本用‘scanf’时出现错误的问题,不想用'scanf_s',这样设置,以后都不用再麻烦了](https://img.it610.com/image/info8/364ab1d1b00b4e2b8168307f7f662395.jpg)
文章图片
2.再按照此路径继续寻找VC\vcprojectitems\newc++file.cpp,找到newc++file.cpp右键->编辑进入
![在VS一些版本用‘scanf’时出现错误的问题,不想用'scanf_s',这样设置,以后都不用再麻烦了](https://img.it610.com/image/info8/aae36f6a253f44c6954313f414b64b0d.png)
文章图片
![在VS一些版本用‘scanf’时出现错误的问题,不想用'scanf_s',这样设置,以后都不用再麻烦了](https://img.it610.com/image/info8/ae9b0942df50411d9065e8ddbd9e9bff.jpg)
文章图片
3.这时我们会发现一个空的记事本,这时需要给里面填充这么一句话#define _CRT_SECURE_NO_WARNINGS 1,然后进行保存选择替换。这时我们会发现一个问题,系统提示没有权限,那么我们此处需要下载一个小软件叫Notepad++(此软件可以用使用管理员权限将上面那句话填充进去)
这里时Notepad++软件的百度网盘资源:
链接:https://pan.baidu.com/s/1odhoP29Im0S4NBLLyMAhZg
提取码:igbu
![在VS一些版本用‘scanf’时出现错误的问题,不想用'scanf_s',这样设置,以后都不用再麻烦了](https://img.it610.com/image/info8/76475c9de6034d128f3061f560b99c2e.jpg)
文章图片
![在VS一些版本用‘scanf’时出现错误的问题,不想用'scanf_s',这样设置,以后都不用再麻烦了](https://img.it610.com/image/info8/a2a0d9fbe5a3442fbd4d6a9148c4ec60.png)
文章图片
4.下载好Notepad++这个软件后,还是找到newc++file.cpp右键,这次选择Edit with Notepad++打开,在此处将#define _CRT_SECURE_NO_WARNINGS 1 此句话写入并Ctrl+s保存,这时会有个询问提示,大概意思就是:此文件不能打开或许被保护,你是否要使用Notepad++的管理员权限进行操作。选择‘是’。
![在VS一些版本用‘scanf’时出现错误的问题,不想用'scanf_s',这样设置,以后都不用再麻烦了](https://img.it610.com/image/info8/49f44b4c8d9d4b799f74ac2458d5fb5f.jpg)
文章图片
![在VS一些版本用‘scanf’时出现错误的问题,不想用'scanf_s',这样设置,以后都不用再麻烦了](https://img.it610.com/image/info8/13653956baf144e8890ec471f85db876.png)
文章图片
5. 选择‘是’之后,此编辑框会再次出现,但是这次你会发现最上面那行后面多了一个【Administrator】,表示正在用管理员权限打开。这时重新Ctrl+s保存一下,操作完毕后可以关闭。
![在VS一些版本用‘scanf’时出现错误的问题,不想用'scanf_s',这样设置,以后都不用再麻烦了](https://img.it610.com/image/info8/5a8337e4523c47dfa3df176f41e4c6fd.jpg)
文章图片
6. 这时当你再次打开vs2017时你会发现刚才输入的那句话在第一行,以后每次打开后这句话都会出现在此处(不影响其他代码)。最后我们来测试一下效果,你会发现同样的程序,多了这句话就不会再出现错误了。希望可以帮助到大家!
![在VS一些版本用‘scanf’时出现错误的问题,不想用'scanf_s',这样设置,以后都不用再麻烦了](https://img.it610.com/image/info8/20be7dc7429d40c7b3f2ad1df1384145.jpg)
文章图片
![在VS一些版本用‘scanf’时出现错误的问题,不想用'scanf_s',这样设置,以后都不用再麻烦了](https://img.it610.com/image/info8/f814bbfd8bcc41c0b82d8ed830a06d42.jpg)
文章图片
【在VS一些版本用‘scanf’时出现错误的问题,不想用'scanf_s',这样设置,以后都不用再麻烦了】
推荐阅读
- c/c++|有感 Visual Studio 2015 RTM 简介 - 八年后回归 Dot Net,终于迎来了 Mvc 时代,盼走了 Web 窗体时代...
- C/C++|C/C++ basis 02
- Qt实战|Qt+OpenCV联合开发(二十一)--图像翻转与旋转
- Qt实战|Qt+OpenCV联合开发(十四)--图像感兴趣区域(ROI)的提取
- Qt实战|Qt+OpenCV联合开发(十三)--通道分离与合并
- opencv|Qt+OpenCV联合开发(十六)--图像几何形状绘制
- Qt实战|Qt+OpenCV联合开发(十七)--随机数与随机颜色
- SNAT的MASQUERADE地址选择与端口选择
- IPTABLES的连接跟踪与NAT分析
- IPVS分析