在使用vs2015时,遇到了scnaf函数安全性的问题,程序不能正常运行,错误如下:

error C4996: '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等类似的函数已经不太安全,要想保证程序的安全性,建议以后采用_s结尾的安全版本,但是很多以前的程序可能还是使用不安全的版本,那么下面给出去掉这种错误提示的几种办法。

1:在VS中新建项目的时候去掉“安全开发生命周期(SDL)检查”即可将错误转变成警告,使得使用不安全版本也不影响编译和运行,如下图所示。

(2)在头文件包含的最前面,记住是最前面(在include的前面)加上:#define _CRT_SECURE_NO_WARNINGS这个宏定义即可,如下图所示。

(3):在编译的头文件最前面加上:#pragma warning( disable : 4996)即可,类似于上图。

(4):通过以下步骤Project properties->Configuration Properties->C/C++->Preprocessor->Preprocessor Definitions进入到预处理的定义中,点击按钮 (...),输入:_CRT_SECURE_NO_WARNINGS,使用 "\n" 相隔即可。

不过随着安全性的重要程度在逐步提高,还是建议大家以后使用安全版本。

最新文章

  1. wordpress-4.4.1 数据库表结构解析
  2. Bitnami Redmine插件记录
  3. php面向对象学习
  4. 【PHP面向对象(OOP)编程入门教程】3.什么是面向对象编程呢?
  5. UISlider显示进度(并且实现图片缩放)
  6. [BZOJ 3143][HNOI2013]游走(数学期望)
  7. mysql 学习笔记5-- 数据库优化
  8. 1203.1——条件语句 之 if语句
  9. Asp.Net MVC4.0 官方教程 入门指南之五--控制器访问模型数据
  10. Linux连接xshell找不到IP信息
  11. Ansible进阶--playbook的使用
  12. myeclispe中向mysql中插入中文数据出现??问题解决办法
  13. Python 第二天学习(文件的处理)
  14. 『调错』OGG Error opening module ggjava_ue.dll
  15. 知识小罐头05(tomcat8请求源码分析 上)
  16. Nginx之编译安装的nginx加入systemctl
  17. How many zero's and how many digits ? UVA - 10061
  18. Oracle Spatial中SDO_Geometry说明
  19. C型USB能阻止危险充电器通过USB传播恶意软件
  20. C语言 · 集合运算

热门文章

  1. python016 Python3 数据结构
  2. python004 Python3 解释器
  3. zoj 2857 Image Transformation
  4. Light oj-1259 - Goldbach`s Conjecture
  5. SQL ROW_NUMBER() 通用分页存储过程
  6. HDU 4641
  7. SPOJ1812 - Longest Common Substring II(LCS2)
  8. tomcat启动提示java.lang.UnsatisfiedLinkError: D:\soft\devTool\apache-tomcat-7.0.57\bin\tcnative-1.dll: C
  9. Codeforces Round Edu 36
  10. JDBC调用存储过程,进参出参