文章目录

  • 一、报错信息
  • 二、解决方案

一、报错信息


​报错信息 :​

严重性 代码  说明  项目  文件  行 禁止显示状态
错误 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:\002_WorkSpace\002_VS\Hello\Hello\Hello.cpp 9

【错误记录】Visual Studio 编译 C++ 代码报错 ( To disable deprecation, use _CRT_SECURE_NO_WARNINGS. )_visual studio

​错误代码示例 :​

// 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 等方法 , 则会弹出上述错误 ;

在源码最开始部分 , 添加

#define _CRT_SECURE_NO_WARNINGS

宏定义 , 即可暂时屏蔽上述错误 ;

​修改后的代码示例 :​

// Hello.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>

int main()
{
// 定义变量
int a = 0;

// 从命令行接收数据, 并为变量赋值
scanf("%d", &a);

// 打印赋值会后的变量值
std::cout << "a = "<< a << "\n";
}

​执行结果 :​

【错误记录】Visual Studio 编译 C++ 代码报错 ( To disable deprecation, use _CRT_SECURE_NO_WARNINGS. )_原力计划_02