先看一下下面的代码
#include<stdio.h>
int main()
{
int a = 0;
int b = 0;
int sum = 0;
scanf("%d %d",&a,&b);
sum = a + b;
printf("%d", sum);
return 0;
}
运行结果会报错,系统告诉你
“scanf”:此函数或变量可能不安全。考虑使用SncFis代替。要禁用弃用,请使用_CRT\u SECURE\u NO\u警告。
解决方案
1.使用scanf_s , 不推荐
将scanf("%d %d",&a,&b);
修改为scanf_s("%d %d",&a,&b);
就可以成功运行,
但此方法不推荐使用,因为scanf_s是VS编译器提供的,不是C语言的标准规定
2.在代码第一行加入#define _CRT_SECURE_NO_WARNINGS 1 即可解决此问题
打开vs的安装路径找到newc++file.cpp文件
接着以管理员的方式打开记事本并输入语句#define _CRT_SECURE_NO_WARNINGS 1
在记事本中点击文件->打开,进入到VCProjectItems文件夹中,选择查看所有文件,点击newc++file.cpp打开,将#define _CRT_SECURE_NO_WARNINGS 1输入保存即可
此后我们每创建的文件第一行都默认有#define _CRT_SECURE_NO_WARNINGS 1
以后就可以直接使用scanf语句