文章目录
- 一、报错信息
- 二、解决方案
一、报错信息
报错信息 :
代码语言:javascript复制严重性 代码 说明 项目 文件 行 禁止显示状态
错误 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.
Hello Y: 02_WorkSpace 02_VSHelloHelloHello.cpp 9
错误代码示例 :
代码语言:javascript复制// Hello.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include <iostream>
int main()
{
// 定义变量
int a = 0;
// 从命令行接收数据, 并为变量赋值
scanf("%d", &a);
// 打印赋值会后的变量值
std::cout << "a = "<< a << "n";
}
二、解决方案
这是在 Windows 中的 Visual Studio 中运行 C 程序中 , 如果程序中调用了 scanf、sprintf、strcpy、strcat 等方法 , 则会弹出上述错误 ;
在源码最开始部分 , 添加
代码语言:javascript复制#define _CRT_SECURE_NO_WARNINGS
宏定义 , 即可暂时屏蔽上述错误 ;
修改后的代码示例 :
代码语言:javascript复制// Hello.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
int main()
{
// 定义变量
int a = 0;
// 从命令行接收数据, 并为变量赋值
scanf("%d", &a);
// 打印赋值会后的变量值
std::cout << "a = "<< a << "n";
}
执行结果 :