跳至主要內容

scanf

张威小于 1 分钟c/c++c基础

scanf

#define _CRT_SECURE_NO_WARNINGS	//放在文件最上端;vs studio要写这个,linux不需要
#include <stdio.h>
scanf("%d", &i2);

我们在编译老的用C语言的开源项目如lua源包的时候,可能因为一些老的.c文件使用了strcpy,scanf等不安全的函数,而报警告和错误,而导致无法编译通过

此时我们有两种解决方案:

  1. 在指定的源文件的开头定义:#define _CRT_SECURE_NO_WARNINGS (只会在该文件里起作用)

  2. 在项目属性里设置,这会在整个项目里生效,依次选择:属性->配置属性->C/C++ ->预处理器->预处理器定义->编辑最下面加上一行:_CRT_SECURE_NO_WARNINGS (注意不需要#define)

image-20231230144015991
image-20231230144015991