【问题】warning C4996: 'scanf': This function or variable may be unsafe
2017-11-20 14:05
375 查看
问题
经常有初学者在学习C/C++语言的时候,使用VS系列编译器。在使用scanf函数从标准输入读取字符、数字的时候,看到编译器报一个警告:
warning 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.
很无奈,熟手无策,这里给出解决方案:
解决方案
在你的代码的最前面(一定)加上下面这句代码,即可解决问题,试试?#define _CRT_SECURE_NO_WARNINGS 1
那岂不是每个源文件都要加这句话吗?
有么有一劳永逸的办法?
有!
在你VS安装目录下:
例如我的安装目录在C盘,找到下面的目录:
C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\vcprojectitems
在这个目录下有一个文件叫
newc++file.cpp,打开这个文件,在里边加上下面的代码。
#define _CRT_SECURE_NO_WARNINGS 1
以后你创建的每个源文件中都会有这句话,这样就再也不用担心看到这个警告了。
但是肯定有人问,为什么不使用警告中的
scanf_s函数,我想说的是这个函数是VS编译器提供的,而不是C语言标准定义的,所以这个函数是不具有跨平台的代码,只在VS编译器可以被编译使用。所以不考虑使用,而如果你的代码就只是在windows上使用,可以考虑。
完
相关文章推荐
- 警告 1 warning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead
- 问题error C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. 的解决
- warning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To
- 解答VS提示性错误:warning C4996: 'scanf': This function or variable may be unsafe.
- 配置OpenCV产生flann\logger.h(66): error C4996: ‘fopen': This function or variable may be unsafe问题
- Visual Studio 2012 编译错误【error C4996: 'scanf': This function or variable may be unsafe. 】的解决方案
- Visual Studio 2012 编译错误【error C4996: 'scanf': This function or variable may be unsafe. 】的解决方案
- 'scanf': This function or variable may be unsafe. Consider using scanf_s instead.
- 错误 1 error C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead.
- Visual Studio 2012 编译错误【error C4996: 'scanf': This function or variable may be unsafe. 】的解决方案
- Visual Studio 2012 编译错误【error C4996: 'scanf': This function or variable may be unsafe. 】的解决方案
- 【问题解决】VS出错,error c4996: 'fopen': This function or variable may be unsafe
- 消除: warning C4996: 'sprintf': This function or variable may be unsafe. Consider 的方法
- Visual Studio 2012 编译错误【error C4996: 'scanf': This function or variable may be unsafe. 】的解决方案
- Visual Studio 2012 编译错误【error C4996: 'scanf': This function or variable may be unsafe. 】的解决方案
- 解决'fopen':this function or variable may be unsafe先关问题的方法
- 配置OpenCV产生flann\logger.h(66): error C4996: 'fopen': This function or variable may be unsafe问题
- 解决VS2013中出现类似于error C4996: 'scanf': This function or variable may be unsafe的安全检查错误
- Visual Studio 2012 编译错误【error C4996: 'scanf': This function or variable may be unsafe. 】的解决方案
- 消除: warning C4996: 'sprintf': This function or variable may be unsafe. Consider 的方法