C语言中,比较两个数的大小,程序如下:
出现如下错误:
错误描述:
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”时,我们并没有对将要放入的数据所占用的空间进行检测(可能出现数据越界),因此这样是不够安全的。
scanf是C语言提供的,scanf_s不是标准C语言提供的,是VS编译器提供的,建议不使用scanf_s,因为若使用了代码就不具有跨平台性和可移植性,你换成这个VS平台使用的函数形式换到别的平台这个代码就出错。
类似情况:
strcpy、strcat、sscanf、fopen这些函数都不是安全的,高版本的VS默认不能使用它们。
解决办法:
在程序的第一行,加入如下代码:
#define _CRT_SECURE_NO_WARNINGS 1
系统解决办法(推荐):
找到此目录下的文件,(不要使用记事本打开),打开文件,对文件进行编辑
在文件中加入
#define _CRT_SECURE_NO_WARNINGS 1
保存,退出VS,再重新进入重新运行程序即可!!!
程序就可以成功运行啦!!!!